mirror of
https://github.com/espressif/esp-idf.git
synced 2026-08-18 06:35:35 +03:00
Merge branch 'feat/update_esp32s31_socs' into 'master'
feat(esp32s31): Add esp32s31 soc header files part1 (auto generate from a~i) See merge request espressif/esp-idf!43471
This commit is contained in:
766
components/soc/esp32s31/register/soc/adc_reg.h
Normal file
766
components/soc/esp32s31/register/soc/adc_reg.h
Normal file
@@ -0,0 +1,766 @@
|
||||
/**
|
||||
* SPDX-FileCopyrightText: 2025 Espressif Systems (Shanghai) CO LTD
|
||||
*
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
*/
|
||||
#pragma once
|
||||
|
||||
#include <stdint.h>
|
||||
#include "soc/soc.h"
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
/** ADC_CTRL0_REG register
|
||||
* Register
|
||||
*/
|
||||
#define ADC_CTRL0_REG (DR_REG_ADC_BASE + 0x0)
|
||||
/** ADC_SAR1_TRIGGER_STOP : WT; bitpos: [0]; default: 0;
|
||||
* need_des
|
||||
*/
|
||||
#define ADC_SAR1_TRIGGER_STOP (BIT(0))
|
||||
#define ADC_SAR1_TRIGGER_STOP_M (ADC_SAR1_TRIGGER_STOP_V << ADC_SAR1_TRIGGER_STOP_S)
|
||||
#define ADC_SAR1_TRIGGER_STOP_V 0x00000001U
|
||||
#define ADC_SAR1_TRIGGER_STOP_S 0
|
||||
/** ADC_SAR1_TRIGGER_START : WT; bitpos: [1]; default: 0;
|
||||
* need_des
|
||||
*/
|
||||
#define ADC_SAR1_TRIGGER_START (BIT(1))
|
||||
#define ADC_SAR1_TRIGGER_START_M (ADC_SAR1_TRIGGER_START_V << ADC_SAR1_TRIGGER_START_S)
|
||||
#define ADC_SAR1_TRIGGER_START_V 0x00000001U
|
||||
#define ADC_SAR1_TRIGGER_START_S 1
|
||||
/** ADC_SAR1_TRIGGER_MODE : R/W; bitpos: [3:2]; default: 0;
|
||||
* SAR clock divider
|
||||
*/
|
||||
#define ADC_SAR1_TRIGGER_MODE 0x00000003U
|
||||
#define ADC_SAR1_TRIGGER_MODE_M (ADC_SAR1_TRIGGER_MODE_V << ADC_SAR1_TRIGGER_MODE_S)
|
||||
#define ADC_SAR1_TRIGGER_MODE_V 0x00000003U
|
||||
#define ADC_SAR1_TRIGGER_MODE_S 2
|
||||
/** ADC_SAR1_PATT_LEN : R/W; bitpos: [17:14]; default: 15;
|
||||
* 0 ~ 15 means length 1 ~ 16
|
||||
*/
|
||||
#define ADC_SAR1_PATT_LEN 0x0000000FU
|
||||
#define ADC_SAR1_PATT_LEN_M (ADC_SAR1_PATT_LEN_V << ADC_SAR1_PATT_LEN_S)
|
||||
#define ADC_SAR1_PATT_LEN_V 0x0000000FU
|
||||
#define ADC_SAR1_PATT_LEN_S 14
|
||||
/** ADC_SAR1_PATT_P_CLEAR : WT; bitpos: [22]; default: 0;
|
||||
* clear the pointer of pattern table for DIG ADC1 CTRL
|
||||
*/
|
||||
#define ADC_SAR1_PATT_P_CLEAR (BIT(22))
|
||||
#define ADC_SAR1_PATT_P_CLEAR_M (ADC_SAR1_PATT_P_CLEAR_V << ADC_SAR1_PATT_P_CLEAR_S)
|
||||
#define ADC_SAR1_PATT_P_CLEAR_V 0x00000001U
|
||||
#define ADC_SAR1_PATT_P_CLEAR_S 22
|
||||
/** ADC_SAR1_PATT_TYPE : R/W; bitpos: [23]; default: 0;
|
||||
* 1: select meas start as table update 0:select mead done as table update
|
||||
*/
|
||||
#define ADC_SAR1_PATT_TYPE (BIT(23))
|
||||
#define ADC_SAR1_PATT_TYPE_M (ADC_SAR1_PATT_TYPE_V << ADC_SAR1_PATT_TYPE_S)
|
||||
#define ADC_SAR1_PATT_TYPE_V 0x00000001U
|
||||
#define ADC_SAR1_PATT_TYPE_S 23
|
||||
/** ADC_SAR1_CLK_POS_SEL : R/W; bitpos: [24]; default: 0;
|
||||
* 1: sar_sel will be coded by the MSB of the 16-bit output data, in this case the
|
||||
* resolution should not be larger than 11 bits.
|
||||
*/
|
||||
#define ADC_SAR1_CLK_POS_SEL (BIT(24))
|
||||
#define ADC_SAR1_CLK_POS_SEL_M (ADC_SAR1_CLK_POS_SEL_V << ADC_SAR1_CLK_POS_SEL_S)
|
||||
#define ADC_SAR1_CLK_POS_SEL_V 0x00000001U
|
||||
#define ADC_SAR1_CLK_POS_SEL_S 24
|
||||
/** ADC_SAR1_CONTINUE_MODE_EN : R/W; bitpos: [25]; default: 0;
|
||||
* 1: I2S input data is from SAR ADC (for DMA), 0: I2S input data is from GPIO matrix
|
||||
*/
|
||||
#define ADC_SAR1_CONTINUE_MODE_EN (BIT(25))
|
||||
#define ADC_SAR1_CONTINUE_MODE_EN_M (ADC_SAR1_CONTINUE_MODE_EN_V << ADC_SAR1_CONTINUE_MODE_EN_S)
|
||||
#define ADC_SAR1_CONTINUE_MODE_EN_V 0x00000001U
|
||||
#define ADC_SAR1_CONTINUE_MODE_EN_S 25
|
||||
/** ADC_XPD_SAR1_FORCE : R/W; bitpos: [27:26]; default: 0;
|
||||
* force option to xpd sar1 blocks
|
||||
*/
|
||||
#define ADC_XPD_SAR1_FORCE 0x00000003U
|
||||
#define ADC_XPD_SAR1_FORCE_M (ADC_XPD_SAR1_FORCE_V << ADC_XPD_SAR1_FORCE_S)
|
||||
#define ADC_XPD_SAR1_FORCE_V 0x00000003U
|
||||
#define ADC_XPD_SAR1_FORCE_S 26
|
||||
|
||||
/** ADC_CTRL1_REG register
|
||||
* Register
|
||||
*/
|
||||
#define ADC_CTRL1_REG (DR_REG_ADC_BASE + 0x4)
|
||||
/** ADC_SAR2_TRIGGER_STOP : WT; bitpos: [0]; default: 0;
|
||||
* need_des
|
||||
*/
|
||||
#define ADC_SAR2_TRIGGER_STOP (BIT(0))
|
||||
#define ADC_SAR2_TRIGGER_STOP_M (ADC_SAR2_TRIGGER_STOP_V << ADC_SAR2_TRIGGER_STOP_S)
|
||||
#define ADC_SAR2_TRIGGER_STOP_V 0x00000001U
|
||||
#define ADC_SAR2_TRIGGER_STOP_S 0
|
||||
/** ADC_SAR2_TRIGGER_START : WT; bitpos: [1]; default: 0;
|
||||
* need_des
|
||||
*/
|
||||
#define ADC_SAR2_TRIGGER_START (BIT(1))
|
||||
#define ADC_SAR2_TRIGGER_START_M (ADC_SAR2_TRIGGER_START_V << ADC_SAR2_TRIGGER_START_S)
|
||||
#define ADC_SAR2_TRIGGER_START_V 0x00000001U
|
||||
#define ADC_SAR2_TRIGGER_START_S 1
|
||||
/** ADC_SAR2_TRIGGER_MODE : R/W; bitpos: [3:2]; default: 0;
|
||||
* SAR clock divider
|
||||
*/
|
||||
#define ADC_SAR2_TRIGGER_MODE 0x00000003U
|
||||
#define ADC_SAR2_TRIGGER_MODE_M (ADC_SAR2_TRIGGER_MODE_V << ADC_SAR2_TRIGGER_MODE_S)
|
||||
#define ADC_SAR2_TRIGGER_MODE_V 0x00000003U
|
||||
#define ADC_SAR2_TRIGGER_MODE_S 2
|
||||
/** ADC_SAR2_PATT_LEN : R/W; bitpos: [17:14]; default: 15;
|
||||
* 0 ~ 15 means length 1 ~ 16
|
||||
*/
|
||||
#define ADC_SAR2_PATT_LEN 0x0000000FU
|
||||
#define ADC_SAR2_PATT_LEN_M (ADC_SAR2_PATT_LEN_V << ADC_SAR2_PATT_LEN_S)
|
||||
#define ADC_SAR2_PATT_LEN_V 0x0000000FU
|
||||
#define ADC_SAR2_PATT_LEN_S 14
|
||||
/** ADC_SAR2_PATT_P_CLEAR : WT; bitpos: [22]; default: 0;
|
||||
* clear the pointer of pattern table for DIG ADC1 CTRL
|
||||
*/
|
||||
#define ADC_SAR2_PATT_P_CLEAR (BIT(22))
|
||||
#define ADC_SAR2_PATT_P_CLEAR_M (ADC_SAR2_PATT_P_CLEAR_V << ADC_SAR2_PATT_P_CLEAR_S)
|
||||
#define ADC_SAR2_PATT_P_CLEAR_V 0x00000001U
|
||||
#define ADC_SAR2_PATT_P_CLEAR_S 22
|
||||
/** ADC_SAR2_PATT_TYPE : R/W; bitpos: [23]; default: 0;
|
||||
* 1: select meas start as table update 0:select mead done as table update
|
||||
*/
|
||||
#define ADC_SAR2_PATT_TYPE (BIT(23))
|
||||
#define ADC_SAR2_PATT_TYPE_M (ADC_SAR2_PATT_TYPE_V << ADC_SAR2_PATT_TYPE_S)
|
||||
#define ADC_SAR2_PATT_TYPE_V 0x00000001U
|
||||
#define ADC_SAR2_PATT_TYPE_S 23
|
||||
/** ADC_SAR2_CLK_POS_SEL : R/W; bitpos: [24]; default: 0;
|
||||
* 1: sar_sel will be coded by the MSB of the 16-bit output data, in this case the
|
||||
* resolution should not be larger than 11 bits.
|
||||
*/
|
||||
#define ADC_SAR2_CLK_POS_SEL (BIT(24))
|
||||
#define ADC_SAR2_CLK_POS_SEL_M (ADC_SAR2_CLK_POS_SEL_V << ADC_SAR2_CLK_POS_SEL_S)
|
||||
#define ADC_SAR2_CLK_POS_SEL_V 0x00000001U
|
||||
#define ADC_SAR2_CLK_POS_SEL_S 24
|
||||
/** ADC_SAR2_CONTINUE_MODE_EN : R/W; bitpos: [25]; default: 0;
|
||||
* 1: I2S input data is from SAR ADC (for DMA), 0: I2S input data is from GPIO matrix
|
||||
*/
|
||||
#define ADC_SAR2_CONTINUE_MODE_EN (BIT(25))
|
||||
#define ADC_SAR2_CONTINUE_MODE_EN_M (ADC_SAR2_CONTINUE_MODE_EN_V << ADC_SAR2_CONTINUE_MODE_EN_S)
|
||||
#define ADC_SAR2_CONTINUE_MODE_EN_V 0x00000001U
|
||||
#define ADC_SAR2_CONTINUE_MODE_EN_S 25
|
||||
/** ADC_XPD_SAR2_FORCE : R/W; bitpos: [27:26]; default: 0;
|
||||
* force option to xpd sar1 blocks
|
||||
*/
|
||||
#define ADC_XPD_SAR2_FORCE 0x00000003U
|
||||
#define ADC_XPD_SAR2_FORCE_M (ADC_XPD_SAR2_FORCE_V << ADC_XPD_SAR2_FORCE_S)
|
||||
#define ADC_XPD_SAR2_FORCE_V 0x00000003U
|
||||
#define ADC_XPD_SAR2_FORCE_S 26
|
||||
|
||||
/** ADC_CTRL2_REG register
|
||||
* Register
|
||||
*/
|
||||
#define ADC_CTRL2_REG (DR_REG_ADC_BASE + 0x8)
|
||||
/** ADC_TIMER_TARGET : R/W; bitpos: [23:12]; default: 10;
|
||||
* to set saradc timer target
|
||||
*/
|
||||
#define ADC_TIMER_TARGET 0x00000FFFU
|
||||
#define ADC_TIMER_TARGET_M (ADC_TIMER_TARGET_V << ADC_TIMER_TARGET_S)
|
||||
#define ADC_TIMER_TARGET_V 0x00000FFFU
|
||||
#define ADC_TIMER_TARGET_S 12
|
||||
/** ADC_TIMER_EN : R/W; bitpos: [24]; default: 0;
|
||||
* to enable saradc timer trigger
|
||||
*/
|
||||
#define ADC_TIMER_EN (BIT(24))
|
||||
#define ADC_TIMER_EN_M (ADC_TIMER_EN_V << ADC_TIMER_EN_S)
|
||||
#define ADC_TIMER_EN_V 0x00000001U
|
||||
#define ADC_TIMER_EN_S 24
|
||||
|
||||
/** ADC_FILTER_CTRL1_REG register
|
||||
* Register
|
||||
*/
|
||||
#define ADC_FILTER_CTRL1_REG (DR_REG_ADC_BASE + 0xc)
|
||||
/** ADC_FILTER_FACTOR1 : R/W; bitpos: [28:26]; default: 0;
|
||||
* need_des
|
||||
*/
|
||||
#define ADC_FILTER_FACTOR1 0x00000007U
|
||||
#define ADC_FILTER_FACTOR1_M (ADC_FILTER_FACTOR1_V << ADC_FILTER_FACTOR1_S)
|
||||
#define ADC_FILTER_FACTOR1_V 0x00000007U
|
||||
#define ADC_FILTER_FACTOR1_S 26
|
||||
/** ADC_FILTER_FACTOR0 : R/W; bitpos: [31:29]; default: 0;
|
||||
* need_des
|
||||
*/
|
||||
#define ADC_FILTER_FACTOR0 0x00000007U
|
||||
#define ADC_FILTER_FACTOR0_M (ADC_FILTER_FACTOR0_V << ADC_FILTER_FACTOR0_S)
|
||||
#define ADC_FILTER_FACTOR0_V 0x00000007U
|
||||
#define ADC_FILTER_FACTOR0_S 29
|
||||
|
||||
/** ADC_SAR1_PATT_TAB1_REG register
|
||||
* Register
|
||||
*/
|
||||
#define ADC_SAR1_PATT_TAB1_REG (DR_REG_ADC_BASE + 0x1c)
|
||||
/** ADC_SAR1_PATT_TAB1 : R/W; bitpos: [23:0]; default: 15728640;
|
||||
* item 0 ~ 3 for pattern table 1 (each item one byte)
|
||||
*/
|
||||
#define ADC_SAR1_PATT_TAB1 0x00FFFFFFU
|
||||
#define ADC_SAR1_PATT_TAB1_M (ADC_SAR1_PATT_TAB1_V << ADC_SAR1_PATT_TAB1_S)
|
||||
#define ADC_SAR1_PATT_TAB1_V 0x00FFFFFFU
|
||||
#define ADC_SAR1_PATT_TAB1_S 0
|
||||
|
||||
/** ADC_SAR1_PATT_TAB2_REG register
|
||||
* Register
|
||||
*/
|
||||
#define ADC_SAR1_PATT_TAB2_REG (DR_REG_ADC_BASE + 0x20)
|
||||
/** ADC_SAR1_PATT_TAB2 : R/W; bitpos: [23:0]; default: 0;
|
||||
* Item 4 ~ 7 for pattern table 1 (each item one byte)
|
||||
*/
|
||||
#define ADC_SAR1_PATT_TAB2 0x00FFFFFFU
|
||||
#define ADC_SAR1_PATT_TAB2_M (ADC_SAR1_PATT_TAB2_V << ADC_SAR1_PATT_TAB2_S)
|
||||
#define ADC_SAR1_PATT_TAB2_V 0x00FFFFFFU
|
||||
#define ADC_SAR1_PATT_TAB2_S 0
|
||||
|
||||
/** ADC_SAR1_PATT_TAB3_REG register
|
||||
* Register
|
||||
*/
|
||||
#define ADC_SAR1_PATT_TAB3_REG (DR_REG_ADC_BASE + 0x24)
|
||||
/** ADC_SAR1_PATT_TAB3 : R/W; bitpos: [23:0]; default: 0;
|
||||
* Item 8 ~ 11 for pattern table 1 (each item one byte)
|
||||
*/
|
||||
#define ADC_SAR1_PATT_TAB3 0x00FFFFFFU
|
||||
#define ADC_SAR1_PATT_TAB3_M (ADC_SAR1_PATT_TAB3_V << ADC_SAR1_PATT_TAB3_S)
|
||||
#define ADC_SAR1_PATT_TAB3_V 0x00FFFFFFU
|
||||
#define ADC_SAR1_PATT_TAB3_S 0
|
||||
|
||||
/** ADC_SAR1_PATT_TAB4_REG register
|
||||
* Register
|
||||
*/
|
||||
#define ADC_SAR1_PATT_TAB4_REG (DR_REG_ADC_BASE + 0x28)
|
||||
/** ADC_SAR1_PATT_TAB4 : R/W; bitpos: [23:0]; default: 0;
|
||||
* Item 12 ~ 15 for pattern table 1 (each item one byte)
|
||||
*/
|
||||
#define ADC_SAR1_PATT_TAB4 0x00FFFFFFU
|
||||
#define ADC_SAR1_PATT_TAB4_M (ADC_SAR1_PATT_TAB4_V << ADC_SAR1_PATT_TAB4_S)
|
||||
#define ADC_SAR1_PATT_TAB4_V 0x00FFFFFFU
|
||||
#define ADC_SAR1_PATT_TAB4_S 0
|
||||
|
||||
/** ADC_SAR2_PATT_TAB1_REG register
|
||||
* Register
|
||||
*/
|
||||
#define ADC_SAR2_PATT_TAB1_REG (DR_REG_ADC_BASE + 0x2c)
|
||||
/** ADC_SAR2_PATT_TAB1 : R/W; bitpos: [23:0]; default: 15728640;
|
||||
* item 0 ~ 3 for pattern table 2 (each item one byte)
|
||||
*/
|
||||
#define ADC_SAR2_PATT_TAB1 0x00FFFFFFU
|
||||
#define ADC_SAR2_PATT_TAB1_M (ADC_SAR2_PATT_TAB1_V << ADC_SAR2_PATT_TAB1_S)
|
||||
#define ADC_SAR2_PATT_TAB1_V 0x00FFFFFFU
|
||||
#define ADC_SAR2_PATT_TAB1_S 0
|
||||
|
||||
/** ADC_SAR2_PATT_TAB2_REG register
|
||||
* Register
|
||||
*/
|
||||
#define ADC_SAR2_PATT_TAB2_REG (DR_REG_ADC_BASE + 0x30)
|
||||
/** ADC_SAR2_PATT_TAB2 : R/W; bitpos: [23:0]; default: 0;
|
||||
* Item 4 ~ 7 for pattern table 2 (each item one byte)
|
||||
*/
|
||||
#define ADC_SAR2_PATT_TAB2 0x00FFFFFFU
|
||||
#define ADC_SAR2_PATT_TAB2_M (ADC_SAR2_PATT_TAB2_V << ADC_SAR2_PATT_TAB2_S)
|
||||
#define ADC_SAR2_PATT_TAB2_V 0x00FFFFFFU
|
||||
#define ADC_SAR2_PATT_TAB2_S 0
|
||||
|
||||
/** ADC_SAR2_PATT_TAB3_REG register
|
||||
* Register
|
||||
*/
|
||||
#define ADC_SAR2_PATT_TAB3_REG (DR_REG_ADC_BASE + 0x34)
|
||||
/** ADC_SAR2_PATT_TAB3 : R/W; bitpos: [23:0]; default: 0;
|
||||
* Item 8 ~ 11 for pattern table 2 (each item one byte)
|
||||
*/
|
||||
#define ADC_SAR2_PATT_TAB3 0x00FFFFFFU
|
||||
#define ADC_SAR2_PATT_TAB3_M (ADC_SAR2_PATT_TAB3_V << ADC_SAR2_PATT_TAB3_S)
|
||||
#define ADC_SAR2_PATT_TAB3_V 0x00FFFFFFU
|
||||
#define ADC_SAR2_PATT_TAB3_S 0
|
||||
|
||||
/** ADC_SAR2_PATT_TAB4_REG register
|
||||
* Register
|
||||
*/
|
||||
#define ADC_SAR2_PATT_TAB4_REG (DR_REG_ADC_BASE + 0x38)
|
||||
/** ADC_SAR2_PATT_TAB4 : R/W; bitpos: [23:0]; default: 0;
|
||||
* Item 12 ~ 15 for pattern table 2 (each item one byte)
|
||||
*/
|
||||
#define ADC_SAR2_PATT_TAB4 0x00FFFFFFU
|
||||
#define ADC_SAR2_PATT_TAB4_M (ADC_SAR2_PATT_TAB4_V << ADC_SAR2_PATT_TAB4_S)
|
||||
#define ADC_SAR2_PATT_TAB4_V 0x00FFFFFFU
|
||||
#define ADC_SAR2_PATT_TAB4_S 0
|
||||
|
||||
/** ADC_FILTER_CTRL0_REG register
|
||||
* Register
|
||||
*/
|
||||
#define ADC_FILTER_CTRL0_REG (DR_REG_ADC_BASE + 0x3c)
|
||||
/** ADC_FILTER_CHANNEL1 : R/W; bitpos: [18:14]; default: 13;
|
||||
* need_des
|
||||
*/
|
||||
#define ADC_FILTER_CHANNEL1 0x0000001FU
|
||||
#define ADC_FILTER_CHANNEL1_M (ADC_FILTER_CHANNEL1_V << ADC_FILTER_CHANNEL1_S)
|
||||
#define ADC_FILTER_CHANNEL1_V 0x0000001FU
|
||||
#define ADC_FILTER_CHANNEL1_S 14
|
||||
/** ADC_FILTER_CHANNEL0 : R/W; bitpos: [23:19]; default: 13;
|
||||
* apb_adc1_filter_factor
|
||||
*/
|
||||
#define ADC_FILTER_CHANNEL0 0x0000001FU
|
||||
#define ADC_FILTER_CHANNEL0_M (ADC_FILTER_CHANNEL0_V << ADC_FILTER_CHANNEL0_S)
|
||||
#define ADC_FILTER_CHANNEL0_V 0x0000001FU
|
||||
#define ADC_FILTER_CHANNEL0_S 19
|
||||
/** ADC_FILTER_RESET : WT; bitpos: [31]; default: 0;
|
||||
* enable apb_adc1_filter
|
||||
*/
|
||||
#define ADC_FILTER_RESET (BIT(31))
|
||||
#define ADC_FILTER_RESET_M (ADC_FILTER_RESET_V << ADC_FILTER_RESET_S)
|
||||
#define ADC_FILTER_RESET_V 0x00000001U
|
||||
#define ADC_FILTER_RESET_S 31
|
||||
|
||||
/** ADC_SAR1_DATA_STATUS_REG register
|
||||
* Register
|
||||
*/
|
||||
#define ADC_SAR1_DATA_STATUS_REG (DR_REG_ADC_BASE + 0x40)
|
||||
/** ADC_APB_SARADC1_DATA : RO; bitpos: [21:0]; default: 0;
|
||||
* need_des
|
||||
*/
|
||||
#define ADC_APB_SARADC1_DATA 0x003FFFFFU
|
||||
#define ADC_APB_SARADC1_DATA_M (ADC_APB_SARADC1_DATA_V << ADC_APB_SARADC1_DATA_S)
|
||||
#define ADC_APB_SARADC1_DATA_V 0x003FFFFFU
|
||||
#define ADC_APB_SARADC1_DATA_S 0
|
||||
|
||||
/** ADC_SAR2_DATA_STATUS_REG register
|
||||
* Register
|
||||
*/
|
||||
#define ADC_SAR2_DATA_STATUS_REG (DR_REG_ADC_BASE + 0x44)
|
||||
/** ADC_APB_SARADC2_DATA : RO; bitpos: [21:0]; default: 0;
|
||||
* need_des
|
||||
*/
|
||||
#define ADC_APB_SARADC2_DATA 0x003FFFFFU
|
||||
#define ADC_APB_SARADC2_DATA_M (ADC_APB_SARADC2_DATA_V << ADC_APB_SARADC2_DATA_S)
|
||||
#define ADC_APB_SARADC2_DATA_V 0x003FFFFFU
|
||||
#define ADC_APB_SARADC2_DATA_S 0
|
||||
|
||||
/** ADC_THRES0_HIGH_THRES_REG register
|
||||
* Register
|
||||
*/
|
||||
#define ADC_THRES0_HIGH_THRES_REG (DR_REG_ADC_BASE + 0x48)
|
||||
/** ADC_THRES0_HIGH : R/W; bitpos: [16:0]; default: 255;
|
||||
* need_des
|
||||
*/
|
||||
#define ADC_THRES0_HIGH 0x0001FFFFU
|
||||
#define ADC_THRES0_HIGH_M (ADC_THRES0_HIGH_V << ADC_THRES0_HIGH_S)
|
||||
#define ADC_THRES0_HIGH_V 0x0001FFFFU
|
||||
#define ADC_THRES0_HIGH_S 0
|
||||
|
||||
/** ADC_THRES0_LOW_THRES_REG register
|
||||
* Register
|
||||
*/
|
||||
#define ADC_THRES0_LOW_THRES_REG (DR_REG_ADC_BASE + 0x4c)
|
||||
/** ADC_THRES0_LOW : R/W; bitpos: [16:0]; default: 0;
|
||||
* need_des
|
||||
*/
|
||||
#define ADC_THRES0_LOW 0x0001FFFFU
|
||||
#define ADC_THRES0_LOW_M (ADC_THRES0_LOW_V << ADC_THRES0_LOW_S)
|
||||
#define ADC_THRES0_LOW_V 0x0001FFFFU
|
||||
#define ADC_THRES0_LOW_S 0
|
||||
|
||||
/** ADC_THRES0_CTRL_REG register
|
||||
* Register
|
||||
*/
|
||||
#define ADC_THRES0_CTRL_REG (DR_REG_ADC_BASE + 0x50)
|
||||
/** ADC_THRES0_CHANNEL : R/W; bitpos: [4:0]; default: 13;
|
||||
* need_des
|
||||
*/
|
||||
#define ADC_THRES0_CHANNEL 0x0000001FU
|
||||
#define ADC_THRES0_CHANNEL_M (ADC_THRES0_CHANNEL_V << ADC_THRES0_CHANNEL_S)
|
||||
#define ADC_THRES0_CHANNEL_V 0x0000001FU
|
||||
#define ADC_THRES0_CHANNEL_S 0
|
||||
/** ADC_THRES0_EN : R/W; bitpos: [5]; default: 0;
|
||||
* need_des
|
||||
*/
|
||||
#define ADC_THRES0_EN (BIT(5))
|
||||
#define ADC_THRES0_EN_M (ADC_THRES0_EN_V << ADC_THRES0_EN_S)
|
||||
#define ADC_THRES0_EN_V 0x00000001U
|
||||
#define ADC_THRES0_EN_S 5
|
||||
|
||||
/** ADC_THRES1_HIGH_THRES_REG register
|
||||
* Register
|
||||
*/
|
||||
#define ADC_THRES1_HIGH_THRES_REG (DR_REG_ADC_BASE + 0x54)
|
||||
/** ADC_THRES1_HIGH : R/W; bitpos: [16:0]; default: 255;
|
||||
* need_des
|
||||
*/
|
||||
#define ADC_THRES1_HIGH 0x0001FFFFU
|
||||
#define ADC_THRES1_HIGH_M (ADC_THRES1_HIGH_V << ADC_THRES1_HIGH_S)
|
||||
#define ADC_THRES1_HIGH_V 0x0001FFFFU
|
||||
#define ADC_THRES1_HIGH_S 0
|
||||
|
||||
/** ADC_THRES1_LOW_THRES_REG register
|
||||
* Register
|
||||
*/
|
||||
#define ADC_THRES1_LOW_THRES_REG (DR_REG_ADC_BASE + 0x58)
|
||||
/** ADC_THRES1_LOW : R/W; bitpos: [16:0]; default: 0;
|
||||
* need_des
|
||||
*/
|
||||
#define ADC_THRES1_LOW 0x0001FFFFU
|
||||
#define ADC_THRES1_LOW_M (ADC_THRES1_LOW_V << ADC_THRES1_LOW_S)
|
||||
#define ADC_THRES1_LOW_V 0x0001FFFFU
|
||||
#define ADC_THRES1_LOW_S 0
|
||||
|
||||
/** ADC_THRES1_CTRL_REG register
|
||||
* Register
|
||||
*/
|
||||
#define ADC_THRES1_CTRL_REG (DR_REG_ADC_BASE + 0x5c)
|
||||
/** ADC_THRES1_CHANNEL : R/W; bitpos: [4:0]; default: 13;
|
||||
* need_des
|
||||
*/
|
||||
#define ADC_THRES1_CHANNEL 0x0000001FU
|
||||
#define ADC_THRES1_CHANNEL_M (ADC_THRES1_CHANNEL_V << ADC_THRES1_CHANNEL_S)
|
||||
#define ADC_THRES1_CHANNEL_V 0x0000001FU
|
||||
#define ADC_THRES1_CHANNEL_S 0
|
||||
/** ADC_THRES1_EN : R/W; bitpos: [5]; default: 0;
|
||||
* need_des
|
||||
*/
|
||||
#define ADC_THRES1_EN (BIT(5))
|
||||
#define ADC_THRES1_EN_M (ADC_THRES1_EN_V << ADC_THRES1_EN_S)
|
||||
#define ADC_THRES1_EN_V 0x00000001U
|
||||
#define ADC_THRES1_EN_S 5
|
||||
|
||||
/** ADC_THRES_CTRL_REG register
|
||||
* Register
|
||||
*/
|
||||
#define ADC_THRES_CTRL_REG (DR_REG_ADC_BASE + 0x60)
|
||||
/** ADC_THRES_ALL_EN : R/W; bitpos: [27]; default: 0;
|
||||
* need_des
|
||||
*/
|
||||
#define ADC_THRES_ALL_EN (BIT(27))
|
||||
#define ADC_THRES_ALL_EN_M (ADC_THRES_ALL_EN_V << ADC_THRES_ALL_EN_S)
|
||||
#define ADC_THRES_ALL_EN_V 0x00000001U
|
||||
#define ADC_THRES_ALL_EN_S 27
|
||||
|
||||
/** ADC_INT_ENA_REG register
|
||||
* Register
|
||||
*/
|
||||
#define ADC_INT_ENA_REG (DR_REG_ADC_BASE + 0x64)
|
||||
/** ADC_FIFO_OVERFLOW_INT_ENA : R/W; bitpos: [25]; default: 0;
|
||||
* need_des
|
||||
*/
|
||||
#define ADC_FIFO_OVERFLOW_INT_ENA (BIT(25))
|
||||
#define ADC_FIFO_OVERFLOW_INT_ENA_M (ADC_FIFO_OVERFLOW_INT_ENA_V << ADC_FIFO_OVERFLOW_INT_ENA_S)
|
||||
#define ADC_FIFO_OVERFLOW_INT_ENA_V 0x00000001U
|
||||
#define ADC_FIFO_OVERFLOW_INT_ENA_S 25
|
||||
/** ADC_THRES1_LOW_INT_ENA : R/W; bitpos: [26]; default: 0;
|
||||
* need_des
|
||||
*/
|
||||
#define ADC_THRES1_LOW_INT_ENA (BIT(26))
|
||||
#define ADC_THRES1_LOW_INT_ENA_M (ADC_THRES1_LOW_INT_ENA_V << ADC_THRES1_LOW_INT_ENA_S)
|
||||
#define ADC_THRES1_LOW_INT_ENA_V 0x00000001U
|
||||
#define ADC_THRES1_LOW_INT_ENA_S 26
|
||||
/** ADC_THRES0_LOW_INT_ENA : R/W; bitpos: [27]; default: 0;
|
||||
* need_des
|
||||
*/
|
||||
#define ADC_THRES0_LOW_INT_ENA (BIT(27))
|
||||
#define ADC_THRES0_LOW_INT_ENA_M (ADC_THRES0_LOW_INT_ENA_V << ADC_THRES0_LOW_INT_ENA_S)
|
||||
#define ADC_THRES0_LOW_INT_ENA_V 0x00000001U
|
||||
#define ADC_THRES0_LOW_INT_ENA_S 27
|
||||
/** ADC_THRES1_HIGH_INT_ENA : R/W; bitpos: [28]; default: 0;
|
||||
* need_des
|
||||
*/
|
||||
#define ADC_THRES1_HIGH_INT_ENA (BIT(28))
|
||||
#define ADC_THRES1_HIGH_INT_ENA_M (ADC_THRES1_HIGH_INT_ENA_V << ADC_THRES1_HIGH_INT_ENA_S)
|
||||
#define ADC_THRES1_HIGH_INT_ENA_V 0x00000001U
|
||||
#define ADC_THRES1_HIGH_INT_ENA_S 28
|
||||
/** ADC_THRES0_HIGH_INT_ENA : R/W; bitpos: [29]; default: 0;
|
||||
* need_des
|
||||
*/
|
||||
#define ADC_THRES0_HIGH_INT_ENA (BIT(29))
|
||||
#define ADC_THRES0_HIGH_INT_ENA_M (ADC_THRES0_HIGH_INT_ENA_V << ADC_THRES0_HIGH_INT_ENA_S)
|
||||
#define ADC_THRES0_HIGH_INT_ENA_V 0x00000001U
|
||||
#define ADC_THRES0_HIGH_INT_ENA_S 29
|
||||
/** ADC_SAR2_DONE_INT_ENA : R/W; bitpos: [30]; default: 0;
|
||||
* need_des
|
||||
*/
|
||||
#define ADC_SAR2_DONE_INT_ENA (BIT(30))
|
||||
#define ADC_SAR2_DONE_INT_ENA_M (ADC_SAR2_DONE_INT_ENA_V << ADC_SAR2_DONE_INT_ENA_S)
|
||||
#define ADC_SAR2_DONE_INT_ENA_V 0x00000001U
|
||||
#define ADC_SAR2_DONE_INT_ENA_S 30
|
||||
/** ADC_SAR1_DONE_INT_ENA : R/W; bitpos: [31]; default: 0;
|
||||
* need_des
|
||||
*/
|
||||
#define ADC_SAR1_DONE_INT_ENA (BIT(31))
|
||||
#define ADC_SAR1_DONE_INT_ENA_M (ADC_SAR1_DONE_INT_ENA_V << ADC_SAR1_DONE_INT_ENA_S)
|
||||
#define ADC_SAR1_DONE_INT_ENA_V 0x00000001U
|
||||
#define ADC_SAR1_DONE_INT_ENA_S 31
|
||||
|
||||
/** ADC_INT_RAW_REG register
|
||||
* Register
|
||||
*/
|
||||
#define ADC_INT_RAW_REG (DR_REG_ADC_BASE + 0x68)
|
||||
/** ADC_FIFO_OVERFLOW_INT_RAW : R/WTC/SS; bitpos: [25]; default: 0;
|
||||
* need_des
|
||||
*/
|
||||
#define ADC_FIFO_OVERFLOW_INT_RAW (BIT(25))
|
||||
#define ADC_FIFO_OVERFLOW_INT_RAW_M (ADC_FIFO_OVERFLOW_INT_RAW_V << ADC_FIFO_OVERFLOW_INT_RAW_S)
|
||||
#define ADC_FIFO_OVERFLOW_INT_RAW_V 0x00000001U
|
||||
#define ADC_FIFO_OVERFLOW_INT_RAW_S 25
|
||||
/** ADC_THRES1_LOW_INT_RAW : R/WTC/SS; bitpos: [26]; default: 0;
|
||||
* need_des
|
||||
*/
|
||||
#define ADC_THRES1_LOW_INT_RAW (BIT(26))
|
||||
#define ADC_THRES1_LOW_INT_RAW_M (ADC_THRES1_LOW_INT_RAW_V << ADC_THRES1_LOW_INT_RAW_S)
|
||||
#define ADC_THRES1_LOW_INT_RAW_V 0x00000001U
|
||||
#define ADC_THRES1_LOW_INT_RAW_S 26
|
||||
/** ADC_THRES0_LOW_INT_RAW : R/WTC/SS; bitpos: [27]; default: 0;
|
||||
* need_des
|
||||
*/
|
||||
#define ADC_THRES0_LOW_INT_RAW (BIT(27))
|
||||
#define ADC_THRES0_LOW_INT_RAW_M (ADC_THRES0_LOW_INT_RAW_V << ADC_THRES0_LOW_INT_RAW_S)
|
||||
#define ADC_THRES0_LOW_INT_RAW_V 0x00000001U
|
||||
#define ADC_THRES0_LOW_INT_RAW_S 27
|
||||
/** ADC_THRES1_HIGH_INT_RAW : R/WTC/SS; bitpos: [28]; default: 0;
|
||||
* need_des
|
||||
*/
|
||||
#define ADC_THRES1_HIGH_INT_RAW (BIT(28))
|
||||
#define ADC_THRES1_HIGH_INT_RAW_M (ADC_THRES1_HIGH_INT_RAW_V << ADC_THRES1_HIGH_INT_RAW_S)
|
||||
#define ADC_THRES1_HIGH_INT_RAW_V 0x00000001U
|
||||
#define ADC_THRES1_HIGH_INT_RAW_S 28
|
||||
/** ADC_THRES0_HIGH_INT_RAW : R/WTC/SS; bitpos: [29]; default: 0;
|
||||
* need_des
|
||||
*/
|
||||
#define ADC_THRES0_HIGH_INT_RAW (BIT(29))
|
||||
#define ADC_THRES0_HIGH_INT_RAW_M (ADC_THRES0_HIGH_INT_RAW_V << ADC_THRES0_HIGH_INT_RAW_S)
|
||||
#define ADC_THRES0_HIGH_INT_RAW_V 0x00000001U
|
||||
#define ADC_THRES0_HIGH_INT_RAW_S 29
|
||||
/** ADC_SAR2_DONE_INT_RAW : R/WTC/SS; bitpos: [30]; default: 0;
|
||||
* need_des
|
||||
*/
|
||||
#define ADC_SAR2_DONE_INT_RAW (BIT(30))
|
||||
#define ADC_SAR2_DONE_INT_RAW_M (ADC_SAR2_DONE_INT_RAW_V << ADC_SAR2_DONE_INT_RAW_S)
|
||||
#define ADC_SAR2_DONE_INT_RAW_V 0x00000001U
|
||||
#define ADC_SAR2_DONE_INT_RAW_S 30
|
||||
/** ADC_SAR1_DONE_INT_RAW : R/WTC/SS; bitpos: [31]; default: 0;
|
||||
* need_des
|
||||
*/
|
||||
#define ADC_SAR1_DONE_INT_RAW (BIT(31))
|
||||
#define ADC_SAR1_DONE_INT_RAW_M (ADC_SAR1_DONE_INT_RAW_V << ADC_SAR1_DONE_INT_RAW_S)
|
||||
#define ADC_SAR1_DONE_INT_RAW_V 0x00000001U
|
||||
#define ADC_SAR1_DONE_INT_RAW_S 31
|
||||
|
||||
/** ADC_INT_ST_REG register
|
||||
* Register
|
||||
*/
|
||||
#define ADC_INT_ST_REG (DR_REG_ADC_BASE + 0x6c)
|
||||
/** ADC_FIFO_OVERFLOW_INT_ST : RO; bitpos: [25]; default: 0;
|
||||
* need_des
|
||||
*/
|
||||
#define ADC_FIFO_OVERFLOW_INT_ST (BIT(25))
|
||||
#define ADC_FIFO_OVERFLOW_INT_ST_M (ADC_FIFO_OVERFLOW_INT_ST_V << ADC_FIFO_OVERFLOW_INT_ST_S)
|
||||
#define ADC_FIFO_OVERFLOW_INT_ST_V 0x00000001U
|
||||
#define ADC_FIFO_OVERFLOW_INT_ST_S 25
|
||||
/** ADC_THRES1_LOW_INT_ST : RO; bitpos: [26]; default: 0;
|
||||
* need_des
|
||||
*/
|
||||
#define ADC_THRES1_LOW_INT_ST (BIT(26))
|
||||
#define ADC_THRES1_LOW_INT_ST_M (ADC_THRES1_LOW_INT_ST_V << ADC_THRES1_LOW_INT_ST_S)
|
||||
#define ADC_THRES1_LOW_INT_ST_V 0x00000001U
|
||||
#define ADC_THRES1_LOW_INT_ST_S 26
|
||||
/** ADC_THRES0_LOW_INT_ST : RO; bitpos: [27]; default: 0;
|
||||
* need_des
|
||||
*/
|
||||
#define ADC_THRES0_LOW_INT_ST (BIT(27))
|
||||
#define ADC_THRES0_LOW_INT_ST_M (ADC_THRES0_LOW_INT_ST_V << ADC_THRES0_LOW_INT_ST_S)
|
||||
#define ADC_THRES0_LOW_INT_ST_V 0x00000001U
|
||||
#define ADC_THRES0_LOW_INT_ST_S 27
|
||||
/** ADC_THRES1_HIGH_INT_ST : RO; bitpos: [28]; default: 0;
|
||||
* need_des
|
||||
*/
|
||||
#define ADC_THRES1_HIGH_INT_ST (BIT(28))
|
||||
#define ADC_THRES1_HIGH_INT_ST_M (ADC_THRES1_HIGH_INT_ST_V << ADC_THRES1_HIGH_INT_ST_S)
|
||||
#define ADC_THRES1_HIGH_INT_ST_V 0x00000001U
|
||||
#define ADC_THRES1_HIGH_INT_ST_S 28
|
||||
/** ADC_THRES0_HIGH_INT_ST : RO; bitpos: [29]; default: 0;
|
||||
* need_des
|
||||
*/
|
||||
#define ADC_THRES0_HIGH_INT_ST (BIT(29))
|
||||
#define ADC_THRES0_HIGH_INT_ST_M (ADC_THRES0_HIGH_INT_ST_V << ADC_THRES0_HIGH_INT_ST_S)
|
||||
#define ADC_THRES0_HIGH_INT_ST_V 0x00000001U
|
||||
#define ADC_THRES0_HIGH_INT_ST_S 29
|
||||
/** ADC_SAR2_DONE_INT_ST : RO; bitpos: [30]; default: 0;
|
||||
* need_des
|
||||
*/
|
||||
#define ADC_SAR2_DONE_INT_ST (BIT(30))
|
||||
#define ADC_SAR2_DONE_INT_ST_M (ADC_SAR2_DONE_INT_ST_V << ADC_SAR2_DONE_INT_ST_S)
|
||||
#define ADC_SAR2_DONE_INT_ST_V 0x00000001U
|
||||
#define ADC_SAR2_DONE_INT_ST_S 30
|
||||
/** ADC_SAR1_DONE_INT_ST : RO; bitpos: [31]; default: 0;
|
||||
* need_des
|
||||
*/
|
||||
#define ADC_SAR1_DONE_INT_ST (BIT(31))
|
||||
#define ADC_SAR1_DONE_INT_ST_M (ADC_SAR1_DONE_INT_ST_V << ADC_SAR1_DONE_INT_ST_S)
|
||||
#define ADC_SAR1_DONE_INT_ST_V 0x00000001U
|
||||
#define ADC_SAR1_DONE_INT_ST_S 31
|
||||
|
||||
/** ADC_INT_CLR_REG register
|
||||
* Register
|
||||
*/
|
||||
#define ADC_INT_CLR_REG (DR_REG_ADC_BASE + 0x70)
|
||||
/** ADC_FIFO_OVERFLOW_INT_CLR : WT; bitpos: [25]; default: 0;
|
||||
* need_des
|
||||
*/
|
||||
#define ADC_FIFO_OVERFLOW_INT_CLR (BIT(25))
|
||||
#define ADC_FIFO_OVERFLOW_INT_CLR_M (ADC_FIFO_OVERFLOW_INT_CLR_V << ADC_FIFO_OVERFLOW_INT_CLR_S)
|
||||
#define ADC_FIFO_OVERFLOW_INT_CLR_V 0x00000001U
|
||||
#define ADC_FIFO_OVERFLOW_INT_CLR_S 25
|
||||
/** ADC_THRES1_LOW_INT_CLR : WT; bitpos: [26]; default: 0;
|
||||
* need_des
|
||||
*/
|
||||
#define ADC_THRES1_LOW_INT_CLR (BIT(26))
|
||||
#define ADC_THRES1_LOW_INT_CLR_M (ADC_THRES1_LOW_INT_CLR_V << ADC_THRES1_LOW_INT_CLR_S)
|
||||
#define ADC_THRES1_LOW_INT_CLR_V 0x00000001U
|
||||
#define ADC_THRES1_LOW_INT_CLR_S 26
|
||||
/** ADC_THRES0_LOW_INT_CLR : WT; bitpos: [27]; default: 0;
|
||||
* need_des
|
||||
*/
|
||||
#define ADC_THRES0_LOW_INT_CLR (BIT(27))
|
||||
#define ADC_THRES0_LOW_INT_CLR_M (ADC_THRES0_LOW_INT_CLR_V << ADC_THRES0_LOW_INT_CLR_S)
|
||||
#define ADC_THRES0_LOW_INT_CLR_V 0x00000001U
|
||||
#define ADC_THRES0_LOW_INT_CLR_S 27
|
||||
/** ADC_THRES1_HIGH_INT_CLR : WT; bitpos: [28]; default: 0;
|
||||
* need_des
|
||||
*/
|
||||
#define ADC_THRES1_HIGH_INT_CLR (BIT(28))
|
||||
#define ADC_THRES1_HIGH_INT_CLR_M (ADC_THRES1_HIGH_INT_CLR_V << ADC_THRES1_HIGH_INT_CLR_S)
|
||||
#define ADC_THRES1_HIGH_INT_CLR_V 0x00000001U
|
||||
#define ADC_THRES1_HIGH_INT_CLR_S 28
|
||||
/** ADC_THRES0_HIGH_INT_CLR : WT; bitpos: [29]; default: 0;
|
||||
* need_des
|
||||
*/
|
||||
#define ADC_THRES0_HIGH_INT_CLR (BIT(29))
|
||||
#define ADC_THRES0_HIGH_INT_CLR_M (ADC_THRES0_HIGH_INT_CLR_V << ADC_THRES0_HIGH_INT_CLR_S)
|
||||
#define ADC_THRES0_HIGH_INT_CLR_V 0x00000001U
|
||||
#define ADC_THRES0_HIGH_INT_CLR_S 29
|
||||
/** ADC_SAR2_DONE_INT_CLR : WT; bitpos: [30]; default: 0;
|
||||
* need_des
|
||||
*/
|
||||
#define ADC_SAR2_DONE_INT_CLR (BIT(30))
|
||||
#define ADC_SAR2_DONE_INT_CLR_M (ADC_SAR2_DONE_INT_CLR_V << ADC_SAR2_DONE_INT_CLR_S)
|
||||
#define ADC_SAR2_DONE_INT_CLR_V 0x00000001U
|
||||
#define ADC_SAR2_DONE_INT_CLR_S 30
|
||||
/** ADC_SAR1_DONE_INT_CLR : WT; bitpos: [31]; default: 0;
|
||||
* need_des
|
||||
*/
|
||||
#define ADC_SAR1_DONE_INT_CLR (BIT(31))
|
||||
#define ADC_SAR1_DONE_INT_CLR_M (ADC_SAR1_DONE_INT_CLR_V << ADC_SAR1_DONE_INT_CLR_S)
|
||||
#define ADC_SAR1_DONE_INT_CLR_V 0x00000001U
|
||||
#define ADC_SAR1_DONE_INT_CLR_S 31
|
||||
|
||||
/** ADC_DMA_CONF_REG register
|
||||
* Register
|
||||
*/
|
||||
#define ADC_DMA_CONF_REG (DR_REG_ADC_BASE + 0x74)
|
||||
/** ADC_APB_ADC_EOF_NUM : R/W; bitpos: [15:0]; default: 255;
|
||||
* the dma_in_suc_eof gen when sample cnt = spi_eof_num
|
||||
*/
|
||||
#define ADC_APB_ADC_EOF_NUM 0x0000FFFFU
|
||||
#define ADC_APB_ADC_EOF_NUM_M (ADC_APB_ADC_EOF_NUM_V << ADC_APB_ADC_EOF_NUM_S)
|
||||
#define ADC_APB_ADC_EOF_NUM_V 0x0000FFFFU
|
||||
#define ADC_APB_ADC_EOF_NUM_S 0
|
||||
/** ADC_DMA_EOF_NUM_CLR : WT; bitpos: [16]; default: 0;
|
||||
* clear eof cnt
|
||||
*/
|
||||
#define ADC_DMA_EOF_NUM_CLR (BIT(16))
|
||||
#define ADC_DMA_EOF_NUM_CLR_M (ADC_DMA_EOF_NUM_CLR_V << ADC_DMA_EOF_NUM_CLR_S)
|
||||
#define ADC_DMA_EOF_NUM_CLR_V 0x00000001U
|
||||
#define ADC_DMA_EOF_NUM_CLR_S 16
|
||||
/** ADC_APB_ADC_TRANS : R/W; bitpos: [31]; default: 0;
|
||||
* enable apb_adc use spi_dma
|
||||
*/
|
||||
#define ADC_APB_ADC_TRANS (BIT(31))
|
||||
#define ADC_APB_ADC_TRANS_M (ADC_APB_ADC_TRANS_V << ADC_APB_ADC_TRANS_S)
|
||||
#define ADC_APB_ADC_TRANS_V 0x00000001U
|
||||
#define ADC_APB_ADC_TRANS_S 31
|
||||
|
||||
/** ADC_REF_CONTROL_REG register
|
||||
* Register
|
||||
*/
|
||||
#define ADC_REF_CONTROL_REG (DR_REG_ADC_BASE + 0x78)
|
||||
/** ADC_RTC_REF_DELAY : R/W; bitpos: [29]; default: 0;
|
||||
* control the refgen short vdd
|
||||
*/
|
||||
#define ADC_RTC_REF_DELAY (BIT(29))
|
||||
#define ADC_RTC_REF_DELAY_M (ADC_RTC_REF_DELAY_V << ADC_RTC_REF_DELAY_S)
|
||||
#define ADC_RTC_REF_DELAY_V 0x00000001U
|
||||
#define ADC_RTC_REF_DELAY_S 29
|
||||
/** ADC_RTC_PRE_CHARGE : R/W; bitpos: [30]; default: 0;
|
||||
* control the refgen module pre charge
|
||||
*/
|
||||
#define ADC_RTC_PRE_CHARGE (BIT(30))
|
||||
#define ADC_RTC_PRE_CHARGE_M (ADC_RTC_PRE_CHARGE_V << ADC_RTC_PRE_CHARGE_S)
|
||||
#define ADC_RTC_PRE_CHARGE_V 0x00000001U
|
||||
#define ADC_RTC_PRE_CHARGE_S 30
|
||||
/** ADC_RTC_XPD_REFGEN : R/W; bitpos: [31]; default: 0;
|
||||
* control the refgen module power up
|
||||
*/
|
||||
#define ADC_RTC_XPD_REFGEN (BIT(31))
|
||||
#define ADC_RTC_XPD_REFGEN_M (ADC_RTC_XPD_REFGEN_V << ADC_RTC_XPD_REFGEN_S)
|
||||
#define ADC_RTC_XPD_REFGEN_V 0x00000001U
|
||||
#define ADC_RTC_XPD_REFGEN_S 31
|
||||
|
||||
/** ADC_RND_ECO_LOW_REG register
|
||||
* Register
|
||||
*/
|
||||
#define ADC_RND_ECO_LOW_REG (DR_REG_ADC_BASE + 0x7c)
|
||||
/** ADC_ADC_RND_ECO_LOW : R/W; bitpos: [31:0]; default: 0;
|
||||
* rnd eco low
|
||||
*/
|
||||
#define ADC_ADC_RND_ECO_LOW 0xFFFFFFFFU
|
||||
#define ADC_ADC_RND_ECO_LOW_M (ADC_ADC_RND_ECO_LOW_V << ADC_ADC_RND_ECO_LOW_S)
|
||||
#define ADC_ADC_RND_ECO_LOW_V 0xFFFFFFFFU
|
||||
#define ADC_ADC_RND_ECO_LOW_S 0
|
||||
|
||||
/** ADC_RND_ECO_HIGH_REG register
|
||||
* Register
|
||||
*/
|
||||
#define ADC_RND_ECO_HIGH_REG (DR_REG_ADC_BASE + 0x80)
|
||||
/** ADC_ADC_RND_ECO_HIGH : R/W; bitpos: [31:0]; default: 4294967295;
|
||||
* rnd eco high
|
||||
*/
|
||||
#define ADC_ADC_RND_ECO_HIGH 0xFFFFFFFFU
|
||||
#define ADC_ADC_RND_ECO_HIGH_M (ADC_ADC_RND_ECO_HIGH_V << ADC_ADC_RND_ECO_HIGH_S)
|
||||
#define ADC_ADC_RND_ECO_HIGH_V 0xFFFFFFFFU
|
||||
#define ADC_ADC_RND_ECO_HIGH_S 0
|
||||
|
||||
/** ADC_RND_ECO_CS_REG register
|
||||
* Register
|
||||
*/
|
||||
#define ADC_RND_ECO_CS_REG (DR_REG_ADC_BASE + 0x84)
|
||||
/** ADC_RND_ECO_EN : R/W; bitpos: [0]; default: 0;
|
||||
* need_des
|
||||
*/
|
||||
#define ADC_RND_ECO_EN (BIT(0))
|
||||
#define ADC_RND_ECO_EN_M (ADC_RND_ECO_EN_V << ADC_RND_ECO_EN_S)
|
||||
#define ADC_RND_ECO_EN_V 0x00000001U
|
||||
#define ADC_RND_ECO_EN_S 0
|
||||
/** ADC_RND_ECO_RESULT : RO; bitpos: [1]; default: 0;
|
||||
* need_des
|
||||
*/
|
||||
#define ADC_RND_ECO_RESULT (BIT(1))
|
||||
#define ADC_RND_ECO_RESULT_M (ADC_RND_ECO_RESULT_V << ADC_RND_ECO_RESULT_S)
|
||||
#define ADC_RND_ECO_RESULT_V 0x00000001U
|
||||
#define ADC_RND_ECO_RESULT_S 1
|
||||
|
||||
/** ADC_CTRL_DATE_REG register
|
||||
* Register
|
||||
*/
|
||||
#define ADC_CTRL_DATE_REG (DR_REG_ADC_BASE + 0x3fc)
|
||||
/** ADC_CTRL_DATE : R/W; bitpos: [30:0]; default: 38830624;
|
||||
* need_des
|
||||
*/
|
||||
#define ADC_CTRL_DATE 0x7FFFFFFFU
|
||||
#define ADC_CTRL_DATE_M (ADC_CTRL_DATE_V << ADC_CTRL_DATE_S)
|
||||
#define ADC_CTRL_DATE_V 0x7FFFFFFFU
|
||||
#define ADC_CTRL_DATE_S 0
|
||||
/** ADC_CLK_EN : R/W; bitpos: [31]; default: 0;
|
||||
* need_des
|
||||
*/
|
||||
#define ADC_CLK_EN (BIT(31))
|
||||
#define ADC_CLK_EN_M (ADC_CLK_EN_V << ADC_CLK_EN_S)
|
||||
#define ADC_CLK_EN_V 0x00000001U
|
||||
#define ADC_CLK_EN_S 31
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
721
components/soc/esp32s31/register/soc/adc_struct.h
Normal file
721
components/soc/esp32s31/register/soc/adc_struct.h
Normal file
@@ -0,0 +1,721 @@
|
||||
/**
|
||||
* SPDX-FileCopyrightText: 2025 Espressif Systems (Shanghai) CO LTD
|
||||
*
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
*/
|
||||
#pragma once
|
||||
|
||||
#include <stdint.h>
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
/** Group: Configure Register */
|
||||
/** Type of ctrl0 register
|
||||
* Register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** sar1_trigger_stop : WT; bitpos: [0]; default: 0;
|
||||
* need_des
|
||||
*/
|
||||
uint32_t sar1_trigger_stop:1;
|
||||
/** sar1_trigger_start : WT; bitpos: [1]; default: 0;
|
||||
* need_des
|
||||
*/
|
||||
uint32_t sar1_trigger_start:1;
|
||||
/** sar1_trigger_mode : R/W; bitpos: [3:2]; default: 0;
|
||||
* SAR clock divider
|
||||
*/
|
||||
uint32_t sar1_trigger_mode:2;
|
||||
uint32_t reserved_4:10;
|
||||
/** sar1_patt_len : R/W; bitpos: [17:14]; default: 15;
|
||||
* 0 ~ 15 means length 1 ~ 16
|
||||
*/
|
||||
uint32_t sar1_patt_len:4;
|
||||
uint32_t reserved_18:4;
|
||||
/** sar1_patt_p_clear : WT; bitpos: [22]; default: 0;
|
||||
* clear the pointer of pattern table for DIG ADC1 CTRL
|
||||
*/
|
||||
uint32_t sar1_patt_p_clear:1;
|
||||
/** sar1_patt_type : R/W; bitpos: [23]; default: 0;
|
||||
* 1: select meas start as table update 0:select mead done as table update
|
||||
*/
|
||||
uint32_t sar1_patt_type:1;
|
||||
/** sar1_clk_pos_sel : R/W; bitpos: [24]; default: 0;
|
||||
* 1: sar_sel will be coded by the MSB of the 16-bit output data, in this case the
|
||||
* resolution should not be larger than 11 bits.
|
||||
*/
|
||||
uint32_t sar1_clk_pos_sel:1;
|
||||
/** sar1_continue_mode_en : R/W; bitpos: [25]; default: 0;
|
||||
* 1: I2S input data is from SAR ADC (for DMA), 0: I2S input data is from GPIO matrix
|
||||
*/
|
||||
uint32_t sar1_continue_mode_en:1;
|
||||
/** xpd_sar1_force : R/W; bitpos: [27:26]; default: 0;
|
||||
* force option to xpd sar1 blocks
|
||||
*/
|
||||
uint32_t xpd_sar1_force:2;
|
||||
uint32_t reserved_28:4;
|
||||
};
|
||||
uint32_t val;
|
||||
} adc_ctrl0_reg_t;
|
||||
|
||||
/** Type of ctrl1 register
|
||||
* Register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** sar2_trigger_stop : WT; bitpos: [0]; default: 0;
|
||||
* need_des
|
||||
*/
|
||||
uint32_t sar2_trigger_stop:1;
|
||||
/** sar2_trigger_start : WT; bitpos: [1]; default: 0;
|
||||
* need_des
|
||||
*/
|
||||
uint32_t sar2_trigger_start:1;
|
||||
/** sar2_trigger_mode : R/W; bitpos: [3:2]; default: 0;
|
||||
* SAR clock divider
|
||||
*/
|
||||
uint32_t sar2_trigger_mode:2;
|
||||
uint32_t reserved_4:10;
|
||||
/** sar2_patt_len : R/W; bitpos: [17:14]; default: 15;
|
||||
* 0 ~ 15 means length 1 ~ 16
|
||||
*/
|
||||
uint32_t sar2_patt_len:4;
|
||||
uint32_t reserved_18:4;
|
||||
/** sar2_patt_p_clear : WT; bitpos: [22]; default: 0;
|
||||
* clear the pointer of pattern table for DIG ADC1 CTRL
|
||||
*/
|
||||
uint32_t sar2_patt_p_clear:1;
|
||||
/** sar2_patt_type : R/W; bitpos: [23]; default: 0;
|
||||
* 1: select meas start as table update 0:select mead done as table update
|
||||
*/
|
||||
uint32_t sar2_patt_type:1;
|
||||
/** sar2_clk_pos_sel : R/W; bitpos: [24]; default: 0;
|
||||
* 1: sar_sel will be coded by the MSB of the 16-bit output data, in this case the
|
||||
* resolution should not be larger than 11 bits.
|
||||
*/
|
||||
uint32_t sar2_clk_pos_sel:1;
|
||||
/** sar2_continue_mode_en : R/W; bitpos: [25]; default: 0;
|
||||
* 1: I2S input data is from SAR ADC (for DMA), 0: I2S input data is from GPIO matrix
|
||||
*/
|
||||
uint32_t sar2_continue_mode_en:1;
|
||||
/** xpd_sar2_force : R/W; bitpos: [27:26]; default: 0;
|
||||
* force option to xpd sar1 blocks
|
||||
*/
|
||||
uint32_t xpd_sar2_force:2;
|
||||
uint32_t reserved_28:4;
|
||||
};
|
||||
uint32_t val;
|
||||
} adc_ctrl1_reg_t;
|
||||
|
||||
/** Type of ctrl2 register
|
||||
* Register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
uint32_t reserved_0:12;
|
||||
/** timer_target : R/W; bitpos: [23:12]; default: 10;
|
||||
* to set saradc timer target
|
||||
*/
|
||||
uint32_t timer_target:12;
|
||||
/** timer_en : R/W; bitpos: [24]; default: 0;
|
||||
* to enable saradc timer trigger
|
||||
*/
|
||||
uint32_t timer_en:1;
|
||||
uint32_t reserved_25:7;
|
||||
};
|
||||
uint32_t val;
|
||||
} adc_ctrl2_reg_t;
|
||||
|
||||
/** Type of filter_ctrl1 register
|
||||
* Register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
uint32_t reserved_0:26;
|
||||
/** filter_factor1 : R/W; bitpos: [28:26]; default: 0;
|
||||
* need_des
|
||||
*/
|
||||
uint32_t filter_factor1:3;
|
||||
/** filter_factor0 : R/W; bitpos: [31:29]; default: 0;
|
||||
* need_des
|
||||
*/
|
||||
uint32_t filter_factor0:3;
|
||||
};
|
||||
uint32_t val;
|
||||
} adc_filter_ctrl1_reg_t;
|
||||
|
||||
/** Type of sar1_patt_tab1 register
|
||||
* Register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** sar1_patt_tab1 : R/W; bitpos: [23:0]; default: 15728640;
|
||||
* item 0 ~ 3 for pattern table 1 (each item one byte)
|
||||
*/
|
||||
uint32_t sar1_patt_tab1:24;
|
||||
uint32_t reserved_24:8;
|
||||
};
|
||||
uint32_t val;
|
||||
} adc_sar1_patt_tab1_reg_t;
|
||||
|
||||
/** Type of sar1_patt_tab2 register
|
||||
* Register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** sar1_patt_tab2 : R/W; bitpos: [23:0]; default: 0;
|
||||
* Item 4 ~ 7 for pattern table 1 (each item one byte)
|
||||
*/
|
||||
uint32_t sar1_patt_tab2:24;
|
||||
uint32_t reserved_24:8;
|
||||
};
|
||||
uint32_t val;
|
||||
} adc_sar1_patt_tab2_reg_t;
|
||||
|
||||
/** Type of sar1_patt_tab3 register
|
||||
* Register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** sar1_patt_tab3 : R/W; bitpos: [23:0]; default: 0;
|
||||
* Item 8 ~ 11 for pattern table 1 (each item one byte)
|
||||
*/
|
||||
uint32_t sar1_patt_tab3:24;
|
||||
uint32_t reserved_24:8;
|
||||
};
|
||||
uint32_t val;
|
||||
} adc_sar1_patt_tab3_reg_t;
|
||||
|
||||
/** Type of sar1_patt_tab4 register
|
||||
* Register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** sar1_patt_tab4 : R/W; bitpos: [23:0]; default: 0;
|
||||
* Item 12 ~ 15 for pattern table 1 (each item one byte)
|
||||
*/
|
||||
uint32_t sar1_patt_tab4:24;
|
||||
uint32_t reserved_24:8;
|
||||
};
|
||||
uint32_t val;
|
||||
} adc_sar1_patt_tab4_reg_t;
|
||||
|
||||
/** Type of sar2_patt_tab1 register
|
||||
* Register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** sar2_patt_tab1 : R/W; bitpos: [23:0]; default: 15728640;
|
||||
* item 0 ~ 3 for pattern table 2 (each item one byte)
|
||||
*/
|
||||
uint32_t sar2_patt_tab1:24;
|
||||
uint32_t reserved_24:8;
|
||||
};
|
||||
uint32_t val;
|
||||
} adc_sar2_patt_tab1_reg_t;
|
||||
|
||||
/** Type of sar2_patt_tab2 register
|
||||
* Register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** sar2_patt_tab2 : R/W; bitpos: [23:0]; default: 0;
|
||||
* Item 4 ~ 7 for pattern table 2 (each item one byte)
|
||||
*/
|
||||
uint32_t sar2_patt_tab2:24;
|
||||
uint32_t reserved_24:8;
|
||||
};
|
||||
uint32_t val;
|
||||
} adc_sar2_patt_tab2_reg_t;
|
||||
|
||||
/** Type of sar2_patt_tab3 register
|
||||
* Register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** sar2_patt_tab3 : R/W; bitpos: [23:0]; default: 0;
|
||||
* Item 8 ~ 11 for pattern table 2 (each item one byte)
|
||||
*/
|
||||
uint32_t sar2_patt_tab3:24;
|
||||
uint32_t reserved_24:8;
|
||||
};
|
||||
uint32_t val;
|
||||
} adc_sar2_patt_tab3_reg_t;
|
||||
|
||||
/** Type of sar2_patt_tab4 register
|
||||
* Register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** sar2_patt_tab4 : R/W; bitpos: [23:0]; default: 0;
|
||||
* Item 12 ~ 15 for pattern table 2 (each item one byte)
|
||||
*/
|
||||
uint32_t sar2_patt_tab4:24;
|
||||
uint32_t reserved_24:8;
|
||||
};
|
||||
uint32_t val;
|
||||
} adc_sar2_patt_tab4_reg_t;
|
||||
|
||||
/** Type of filter_ctrl0 register
|
||||
* Register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
uint32_t reserved_0:14;
|
||||
/** filter_channel1 : R/W; bitpos: [18:14]; default: 13;
|
||||
* need_des
|
||||
*/
|
||||
uint32_t filter_channel1:5;
|
||||
/** filter_channel0 : R/W; bitpos: [23:19]; default: 13;
|
||||
* apb_adc1_filter_factor
|
||||
*/
|
||||
uint32_t filter_channel0:5;
|
||||
uint32_t reserved_24:7;
|
||||
/** filter_reset : WT; bitpos: [31]; default: 0;
|
||||
* enable apb_adc1_filter
|
||||
*/
|
||||
uint32_t filter_reset:1;
|
||||
};
|
||||
uint32_t val;
|
||||
} adc_filter_ctrl0_reg_t;
|
||||
|
||||
/** Type of sar1_data_status register
|
||||
* Register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** apb_saradc1_data : RO; bitpos: [21:0]; default: 0;
|
||||
* need_des
|
||||
*/
|
||||
uint32_t apb_saradc1_data:22;
|
||||
uint32_t reserved_22:10;
|
||||
};
|
||||
uint32_t val;
|
||||
} adc_sar1_data_status_reg_t;
|
||||
|
||||
/** Type of sar2_data_status register
|
||||
* Register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** apb_saradc2_data : RO; bitpos: [21:0]; default: 0;
|
||||
* need_des
|
||||
*/
|
||||
uint32_t apb_saradc2_data:22;
|
||||
uint32_t reserved_22:10;
|
||||
};
|
||||
uint32_t val;
|
||||
} adc_sar2_data_status_reg_t;
|
||||
|
||||
/** Type of thres0_high_thres register
|
||||
* Register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** thres0_high : R/W; bitpos: [16:0]; default: 255;
|
||||
* need_des
|
||||
*/
|
||||
uint32_t thres0_high:17;
|
||||
uint32_t reserved_17:15;
|
||||
};
|
||||
uint32_t val;
|
||||
} adc_thres0_high_thres_reg_t;
|
||||
|
||||
/** Type of thres0_low_thres register
|
||||
* Register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** thres0_low : R/W; bitpos: [16:0]; default: 0;
|
||||
* need_des
|
||||
*/
|
||||
uint32_t thres0_low:17;
|
||||
uint32_t reserved_17:15;
|
||||
};
|
||||
uint32_t val;
|
||||
} adc_thres0_low_thres_reg_t;
|
||||
|
||||
/** Type of thres0_ctrl register
|
||||
* Register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** thres0_channel : R/W; bitpos: [4:0]; default: 13;
|
||||
* need_des
|
||||
*/
|
||||
uint32_t thres0_channel:5;
|
||||
/** thres0_en : R/W; bitpos: [5]; default: 0;
|
||||
* need_des
|
||||
*/
|
||||
uint32_t thres0_en:1;
|
||||
uint32_t reserved_6:26;
|
||||
};
|
||||
uint32_t val;
|
||||
} adc_thres0_ctrl_reg_t;
|
||||
|
||||
/** Type of thres1_high_thres register
|
||||
* Register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** thres1_high : R/W; bitpos: [16:0]; default: 255;
|
||||
* need_des
|
||||
*/
|
||||
uint32_t thres1_high:17;
|
||||
uint32_t reserved_17:15;
|
||||
};
|
||||
uint32_t val;
|
||||
} adc_thres1_high_thres_reg_t;
|
||||
|
||||
/** Type of thres1_low_thres register
|
||||
* Register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** thres1_low : R/W; bitpos: [16:0]; default: 0;
|
||||
* need_des
|
||||
*/
|
||||
uint32_t thres1_low:17;
|
||||
uint32_t reserved_17:15;
|
||||
};
|
||||
uint32_t val;
|
||||
} adc_thres1_low_thres_reg_t;
|
||||
|
||||
/** Type of thres1_ctrl register
|
||||
* Register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** thres1_channel : R/W; bitpos: [4:0]; default: 13;
|
||||
* need_des
|
||||
*/
|
||||
uint32_t thres1_channel:5;
|
||||
/** thres1_en : R/W; bitpos: [5]; default: 0;
|
||||
* need_des
|
||||
*/
|
||||
uint32_t thres1_en:1;
|
||||
uint32_t reserved_6:26;
|
||||
};
|
||||
uint32_t val;
|
||||
} adc_thres1_ctrl_reg_t;
|
||||
|
||||
/** Type of thres_ctrl register
|
||||
* Register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
uint32_t reserved_0:27;
|
||||
/** thres_all_en : R/W; bitpos: [27]; default: 0;
|
||||
* need_des
|
||||
*/
|
||||
uint32_t thres_all_en:1;
|
||||
uint32_t reserved_28:4;
|
||||
};
|
||||
uint32_t val;
|
||||
} adc_thres_ctrl_reg_t;
|
||||
|
||||
/** Type of int_ena register
|
||||
* Register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
uint32_t reserved_0:25;
|
||||
/** fifo_overflow_int_ena : R/W; bitpos: [25]; default: 0;
|
||||
* need_des
|
||||
*/
|
||||
uint32_t fifo_overflow_int_ena:1;
|
||||
/** thres1_low_int_ena : R/W; bitpos: [26]; default: 0;
|
||||
* need_des
|
||||
*/
|
||||
uint32_t thres1_low_int_ena:1;
|
||||
/** thres0_low_int_ena : R/W; bitpos: [27]; default: 0;
|
||||
* need_des
|
||||
*/
|
||||
uint32_t thres0_low_int_ena:1;
|
||||
/** thres1_high_int_ena : R/W; bitpos: [28]; default: 0;
|
||||
* need_des
|
||||
*/
|
||||
uint32_t thres1_high_int_ena:1;
|
||||
/** thres0_high_int_ena : R/W; bitpos: [29]; default: 0;
|
||||
* need_des
|
||||
*/
|
||||
uint32_t thres0_high_int_ena:1;
|
||||
/** sar2_done_int_ena : R/W; bitpos: [30]; default: 0;
|
||||
* need_des
|
||||
*/
|
||||
uint32_t sar2_done_int_ena:1;
|
||||
/** sar1_done_int_ena : R/W; bitpos: [31]; default: 0;
|
||||
* need_des
|
||||
*/
|
||||
uint32_t sar1_done_int_ena:1;
|
||||
};
|
||||
uint32_t val;
|
||||
} adc_int_ena_reg_t;
|
||||
|
||||
/** Type of int_raw register
|
||||
* Register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
uint32_t reserved_0:25;
|
||||
/** fifo_overflow_int_raw : R/WTC/SS; bitpos: [25]; default: 0;
|
||||
* need_des
|
||||
*/
|
||||
uint32_t fifo_overflow_int_raw:1;
|
||||
/** thres1_low_int_raw : R/WTC/SS; bitpos: [26]; default: 0;
|
||||
* need_des
|
||||
*/
|
||||
uint32_t thres1_low_int_raw:1;
|
||||
/** thres0_low_int_raw : R/WTC/SS; bitpos: [27]; default: 0;
|
||||
* need_des
|
||||
*/
|
||||
uint32_t thres0_low_int_raw:1;
|
||||
/** thres1_high_int_raw : R/WTC/SS; bitpos: [28]; default: 0;
|
||||
* need_des
|
||||
*/
|
||||
uint32_t thres1_high_int_raw:1;
|
||||
/** thres0_high_int_raw : R/WTC/SS; bitpos: [29]; default: 0;
|
||||
* need_des
|
||||
*/
|
||||
uint32_t thres0_high_int_raw:1;
|
||||
/** sar2_done_int_raw : R/WTC/SS; bitpos: [30]; default: 0;
|
||||
* need_des
|
||||
*/
|
||||
uint32_t sar2_done_int_raw:1;
|
||||
/** sar1_done_int_raw : R/WTC/SS; bitpos: [31]; default: 0;
|
||||
* need_des
|
||||
*/
|
||||
uint32_t sar1_done_int_raw:1;
|
||||
};
|
||||
uint32_t val;
|
||||
} adc_int_raw_reg_t;
|
||||
|
||||
/** Type of int_st register
|
||||
* Register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
uint32_t reserved_0:25;
|
||||
/** fifo_overflow_int_st : RO; bitpos: [25]; default: 0;
|
||||
* need_des
|
||||
*/
|
||||
uint32_t fifo_overflow_int_st:1;
|
||||
/** thres1_low_int_st : RO; bitpos: [26]; default: 0;
|
||||
* need_des
|
||||
*/
|
||||
uint32_t thres1_low_int_st:1;
|
||||
/** thres0_low_int_st : RO; bitpos: [27]; default: 0;
|
||||
* need_des
|
||||
*/
|
||||
uint32_t thres0_low_int_st:1;
|
||||
/** thres1_high_int_st : RO; bitpos: [28]; default: 0;
|
||||
* need_des
|
||||
*/
|
||||
uint32_t thres1_high_int_st:1;
|
||||
/** thres0_high_int_st : RO; bitpos: [29]; default: 0;
|
||||
* need_des
|
||||
*/
|
||||
uint32_t thres0_high_int_st:1;
|
||||
/** sar2_done_int_st : RO; bitpos: [30]; default: 0;
|
||||
* need_des
|
||||
*/
|
||||
uint32_t sar2_done_int_st:1;
|
||||
/** sar1_done_int_st : RO; bitpos: [31]; default: 0;
|
||||
* need_des
|
||||
*/
|
||||
uint32_t sar1_done_int_st:1;
|
||||
};
|
||||
uint32_t val;
|
||||
} adc_int_st_reg_t;
|
||||
|
||||
/** Type of int_clr register
|
||||
* Register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
uint32_t reserved_0:25;
|
||||
/** fifo_overflow_int_clr : WT; bitpos: [25]; default: 0;
|
||||
* need_des
|
||||
*/
|
||||
uint32_t fifo_overflow_int_clr:1;
|
||||
/** thres1_low_int_clr : WT; bitpos: [26]; default: 0;
|
||||
* need_des
|
||||
*/
|
||||
uint32_t thres1_low_int_clr:1;
|
||||
/** thres0_low_int_clr : WT; bitpos: [27]; default: 0;
|
||||
* need_des
|
||||
*/
|
||||
uint32_t thres0_low_int_clr:1;
|
||||
/** thres1_high_int_clr : WT; bitpos: [28]; default: 0;
|
||||
* need_des
|
||||
*/
|
||||
uint32_t thres1_high_int_clr:1;
|
||||
/** thres0_high_int_clr : WT; bitpos: [29]; default: 0;
|
||||
* need_des
|
||||
*/
|
||||
uint32_t thres0_high_int_clr:1;
|
||||
/** sar2_done_int_clr : WT; bitpos: [30]; default: 0;
|
||||
* need_des
|
||||
*/
|
||||
uint32_t sar2_done_int_clr:1;
|
||||
/** sar1_done_int_clr : WT; bitpos: [31]; default: 0;
|
||||
* need_des
|
||||
*/
|
||||
uint32_t sar1_done_int_clr:1;
|
||||
};
|
||||
uint32_t val;
|
||||
} adc_int_clr_reg_t;
|
||||
|
||||
/** Type of dma_conf register
|
||||
* Register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** apb_adc_eof_num : R/W; bitpos: [15:0]; default: 255;
|
||||
* the dma_in_suc_eof gen when sample cnt = spi_eof_num
|
||||
*/
|
||||
uint32_t apb_adc_eof_num:16;
|
||||
/** dma_eof_num_clr : WT; bitpos: [16]; default: 0;
|
||||
* clear eof cnt
|
||||
*/
|
||||
uint32_t dma_eof_num_clr:1;
|
||||
uint32_t reserved_17:14;
|
||||
/** apb_adc_trans : R/W; bitpos: [31]; default: 0;
|
||||
* enable apb_adc use spi_dma
|
||||
*/
|
||||
uint32_t apb_adc_trans:1;
|
||||
};
|
||||
uint32_t val;
|
||||
} adc_dma_conf_reg_t;
|
||||
|
||||
/** Type of ref_control register
|
||||
* Register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
uint32_t reserved_0:29;
|
||||
/** rtc_ref_delay : R/W; bitpos: [29]; default: 0;
|
||||
* control the refgen short vdd
|
||||
*/
|
||||
uint32_t rtc_ref_delay:1;
|
||||
/** rtc_pre_charge : R/W; bitpos: [30]; default: 0;
|
||||
* control the refgen module pre charge
|
||||
*/
|
||||
uint32_t rtc_pre_charge:1;
|
||||
/** rtc_xpd_refgen : R/W; bitpos: [31]; default: 0;
|
||||
* control the refgen module power up
|
||||
*/
|
||||
uint32_t rtc_xpd_refgen:1;
|
||||
};
|
||||
uint32_t val;
|
||||
} adc_ref_control_reg_t;
|
||||
|
||||
/** Type of rnd_eco_low register
|
||||
* Register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** adc_rnd_eco_low : R/W; bitpos: [31:0]; default: 0;
|
||||
* rnd eco low
|
||||
*/
|
||||
uint32_t adc_rnd_eco_low:32;
|
||||
};
|
||||
uint32_t val;
|
||||
} adc_rnd_eco_low_reg_t;
|
||||
|
||||
/** Type of rnd_eco_high register
|
||||
* Register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** adc_rnd_eco_high : R/W; bitpos: [31:0]; default: 4294967295;
|
||||
* rnd eco high
|
||||
*/
|
||||
uint32_t adc_rnd_eco_high:32;
|
||||
};
|
||||
uint32_t val;
|
||||
} adc_rnd_eco_high_reg_t;
|
||||
|
||||
/** Type of rnd_eco_cs register
|
||||
* Register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** rnd_eco_en : R/W; bitpos: [0]; default: 0;
|
||||
* need_des
|
||||
*/
|
||||
uint32_t rnd_eco_en:1;
|
||||
/** rnd_eco_result : RO; bitpos: [1]; default: 0;
|
||||
* need_des
|
||||
*/
|
||||
uint32_t rnd_eco_result:1;
|
||||
uint32_t reserved_2:30;
|
||||
};
|
||||
uint32_t val;
|
||||
} adc_rnd_eco_cs_reg_t;
|
||||
|
||||
/** Type of ctrl_date register
|
||||
* Register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** ctrl_date : R/W; bitpos: [30:0]; default: 38830624;
|
||||
* need_des
|
||||
*/
|
||||
uint32_t ctrl_date:31;
|
||||
/** clk_en : R/W; bitpos: [31]; default: 0;
|
||||
* need_des
|
||||
*/
|
||||
uint32_t clk_en:1;
|
||||
};
|
||||
uint32_t val;
|
||||
} adc_ctrl_date_reg_t;
|
||||
|
||||
|
||||
typedef struct {
|
||||
volatile adc_ctrl0_reg_t ctrl0;
|
||||
volatile adc_ctrl1_reg_t ctrl1;
|
||||
volatile adc_ctrl2_reg_t ctrl2;
|
||||
volatile adc_filter_ctrl1_reg_t filter_ctrl1;
|
||||
uint32_t reserved_010[3];
|
||||
volatile adc_sar1_patt_tab1_reg_t sar1_patt_tab1;
|
||||
volatile adc_sar1_patt_tab2_reg_t sar1_patt_tab2;
|
||||
volatile adc_sar1_patt_tab3_reg_t sar1_patt_tab3;
|
||||
volatile adc_sar1_patt_tab4_reg_t sar1_patt_tab4;
|
||||
volatile adc_sar2_patt_tab1_reg_t sar2_patt_tab1;
|
||||
volatile adc_sar2_patt_tab2_reg_t sar2_patt_tab2;
|
||||
volatile adc_sar2_patt_tab3_reg_t sar2_patt_tab3;
|
||||
volatile adc_sar2_patt_tab4_reg_t sar2_patt_tab4;
|
||||
volatile adc_filter_ctrl0_reg_t filter_ctrl0;
|
||||
volatile adc_sar1_data_status_reg_t sar1_data_status;
|
||||
volatile adc_sar2_data_status_reg_t sar2_data_status;
|
||||
volatile adc_thres0_high_thres_reg_t thres0_high_thres;
|
||||
volatile adc_thres0_low_thres_reg_t thres0_low_thres;
|
||||
volatile adc_thres0_ctrl_reg_t thres0_ctrl;
|
||||
volatile adc_thres1_high_thres_reg_t thres1_high_thres;
|
||||
volatile adc_thres1_low_thres_reg_t thres1_low_thres;
|
||||
volatile adc_thres1_ctrl_reg_t thres1_ctrl;
|
||||
volatile adc_thres_ctrl_reg_t thres_ctrl;
|
||||
volatile adc_int_ena_reg_t int_ena;
|
||||
volatile adc_int_raw_reg_t int_raw;
|
||||
volatile adc_int_st_reg_t int_st;
|
||||
volatile adc_int_clr_reg_t int_clr;
|
||||
volatile adc_dma_conf_reg_t dma_conf;
|
||||
volatile adc_ref_control_reg_t ref_control;
|
||||
volatile adc_rnd_eco_low_reg_t rnd_eco_low;
|
||||
volatile adc_rnd_eco_high_reg_t rnd_eco_high;
|
||||
volatile adc_rnd_eco_cs_reg_t rnd_eco_cs;
|
||||
uint32_t reserved_088[221];
|
||||
volatile adc_ctrl_date_reg_t ctrl_date;
|
||||
} adc_dev_t;
|
||||
|
||||
|
||||
#ifndef __cplusplus
|
||||
_Static_assert(sizeof(adc_dev_t) == 0x400, "Invalid size of adc_dev_t structure");
|
||||
#endif
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
484
components/soc/esp32s31/register/soc/aes_reg.h
Normal file
484
components/soc/esp32s31/register/soc/aes_reg.h
Normal file
@@ -0,0 +1,484 @@
|
||||
/**
|
||||
* SPDX-FileCopyrightText: 2025 Espressif Systems (Shanghai) CO LTD
|
||||
*
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
*/
|
||||
#pragma once
|
||||
|
||||
#include <stdint.h>
|
||||
#include "soc/soc.h"
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
/** AES_KEY_0_REG register
|
||||
* AES key data register 0
|
||||
*/
|
||||
#define AES_KEY_0_REG (DR_REG_AES_BASE + 0x0)
|
||||
/** AES_KEY_0 : R/W; bitpos: [31:0]; default: 0;
|
||||
* This bits stores key_0 that is a part of key material.
|
||||
*/
|
||||
#define AES_KEY_0 0xFFFFFFFFU
|
||||
#define AES_KEY_0_M (AES_KEY_0_V << AES_KEY_0_S)
|
||||
#define AES_KEY_0_V 0xFFFFFFFFU
|
||||
#define AES_KEY_0_S 0
|
||||
|
||||
/** AES_KEY_1_REG register
|
||||
* AES key data register 1
|
||||
*/
|
||||
#define AES_KEY_1_REG (DR_REG_AES_BASE + 0x4)
|
||||
/** AES_KEY_0 : R/W; bitpos: [31:0]; default: 0;
|
||||
* This bits stores key_0 that is a part of key material.
|
||||
*/
|
||||
#define AES_KEY_0 0xFFFFFFFFU
|
||||
#define AES_KEY_0_M (AES_KEY_0_V << AES_KEY_0_S)
|
||||
#define AES_KEY_0_V 0xFFFFFFFFU
|
||||
#define AES_KEY_0_S 0
|
||||
|
||||
/** AES_KEY_2_REG register
|
||||
* AES key data register 2
|
||||
*/
|
||||
#define AES_KEY_2_REG (DR_REG_AES_BASE + 0x8)
|
||||
/** AES_KEY_0 : R/W; bitpos: [31:0]; default: 0;
|
||||
* This bits stores key_0 that is a part of key material.
|
||||
*/
|
||||
#define AES_KEY_0 0xFFFFFFFFU
|
||||
#define AES_KEY_0_M (AES_KEY_0_V << AES_KEY_0_S)
|
||||
#define AES_KEY_0_V 0xFFFFFFFFU
|
||||
#define AES_KEY_0_S 0
|
||||
|
||||
/** AES_KEY_3_REG register
|
||||
* AES key data register 3
|
||||
*/
|
||||
#define AES_KEY_3_REG (DR_REG_AES_BASE + 0xc)
|
||||
/** AES_KEY_0 : R/W; bitpos: [31:0]; default: 0;
|
||||
* This bits stores key_0 that is a part of key material.
|
||||
*/
|
||||
#define AES_KEY_0 0xFFFFFFFFU
|
||||
#define AES_KEY_0_M (AES_KEY_0_V << AES_KEY_0_S)
|
||||
#define AES_KEY_0_V 0xFFFFFFFFU
|
||||
#define AES_KEY_0_S 0
|
||||
|
||||
/** AES_KEY_4_REG register
|
||||
* AES key data register 4
|
||||
*/
|
||||
#define AES_KEY_4_REG (DR_REG_AES_BASE + 0x10)
|
||||
/** AES_KEY_0 : R/W; bitpos: [31:0]; default: 0;
|
||||
* This bits stores key_0 that is a part of key material.
|
||||
*/
|
||||
#define AES_KEY_0 0xFFFFFFFFU
|
||||
#define AES_KEY_0_M (AES_KEY_0_V << AES_KEY_0_S)
|
||||
#define AES_KEY_0_V 0xFFFFFFFFU
|
||||
#define AES_KEY_0_S 0
|
||||
|
||||
/** AES_KEY_5_REG register
|
||||
* AES key data register 5
|
||||
*/
|
||||
#define AES_KEY_5_REG (DR_REG_AES_BASE + 0x14)
|
||||
/** AES_KEY_0 : R/W; bitpos: [31:0]; default: 0;
|
||||
* This bits stores key_0 that is a part of key material.
|
||||
*/
|
||||
#define AES_KEY_0 0xFFFFFFFFU
|
||||
#define AES_KEY_0_M (AES_KEY_0_V << AES_KEY_0_S)
|
||||
#define AES_KEY_0_V 0xFFFFFFFFU
|
||||
#define AES_KEY_0_S 0
|
||||
|
||||
/** AES_KEY_6_REG register
|
||||
* AES key data register 6
|
||||
*/
|
||||
#define AES_KEY_6_REG (DR_REG_AES_BASE + 0x18)
|
||||
/** AES_KEY_0 : R/W; bitpos: [31:0]; default: 0;
|
||||
* This bits stores key_0 that is a part of key material.
|
||||
*/
|
||||
#define AES_KEY_0 0xFFFFFFFFU
|
||||
#define AES_KEY_0_M (AES_KEY_0_V << AES_KEY_0_S)
|
||||
#define AES_KEY_0_V 0xFFFFFFFFU
|
||||
#define AES_KEY_0_S 0
|
||||
|
||||
/** AES_KEY_7_REG register
|
||||
* AES key data register 7
|
||||
*/
|
||||
#define AES_KEY_7_REG (DR_REG_AES_BASE + 0x1c)
|
||||
/** AES_KEY_0 : R/W; bitpos: [31:0]; default: 0;
|
||||
* This bits stores key_0 that is a part of key material.
|
||||
*/
|
||||
#define AES_KEY_0 0xFFFFFFFFU
|
||||
#define AES_KEY_0_M (AES_KEY_0_V << AES_KEY_0_S)
|
||||
#define AES_KEY_0_V 0xFFFFFFFFU
|
||||
#define AES_KEY_0_S 0
|
||||
|
||||
/** AES_TEXT_IN_0_REG register
|
||||
* Source text data register 0
|
||||
*/
|
||||
#define AES_TEXT_IN_0_REG (DR_REG_AES_BASE + 0x20)
|
||||
/** AES_TEXT_IN_0 : R/W; bitpos: [31:0]; default: 0;
|
||||
* This bits stores text_in_0 that is a part of source text material.
|
||||
*/
|
||||
#define AES_TEXT_IN_0 0xFFFFFFFFU
|
||||
#define AES_TEXT_IN_0_M (AES_TEXT_IN_0_V << AES_TEXT_IN_0_S)
|
||||
#define AES_TEXT_IN_0_V 0xFFFFFFFFU
|
||||
#define AES_TEXT_IN_0_S 0
|
||||
|
||||
/** AES_TEXT_IN_1_REG register
|
||||
* Source text data register 1
|
||||
*/
|
||||
#define AES_TEXT_IN_1_REG (DR_REG_AES_BASE + 0x24)
|
||||
/** AES_TEXT_IN_0 : R/W; bitpos: [31:0]; default: 0;
|
||||
* This bits stores text_in_0 that is a part of source text material.
|
||||
*/
|
||||
#define AES_TEXT_IN_0 0xFFFFFFFFU
|
||||
#define AES_TEXT_IN_0_M (AES_TEXT_IN_0_V << AES_TEXT_IN_0_S)
|
||||
#define AES_TEXT_IN_0_V 0xFFFFFFFFU
|
||||
#define AES_TEXT_IN_0_S 0
|
||||
|
||||
/** AES_TEXT_IN_2_REG register
|
||||
* Source text data register 2
|
||||
*/
|
||||
#define AES_TEXT_IN_2_REG (DR_REG_AES_BASE + 0x28)
|
||||
/** AES_TEXT_IN_0 : R/W; bitpos: [31:0]; default: 0;
|
||||
* This bits stores text_in_0 that is a part of source text material.
|
||||
*/
|
||||
#define AES_TEXT_IN_0 0xFFFFFFFFU
|
||||
#define AES_TEXT_IN_0_M (AES_TEXT_IN_0_V << AES_TEXT_IN_0_S)
|
||||
#define AES_TEXT_IN_0_V 0xFFFFFFFFU
|
||||
#define AES_TEXT_IN_0_S 0
|
||||
|
||||
/** AES_TEXT_IN_3_REG register
|
||||
* Source text data register 3
|
||||
*/
|
||||
#define AES_TEXT_IN_3_REG (DR_REG_AES_BASE + 0x2c)
|
||||
/** AES_TEXT_IN_0 : R/W; bitpos: [31:0]; default: 0;
|
||||
* This bits stores text_in_0 that is a part of source text material.
|
||||
*/
|
||||
#define AES_TEXT_IN_0 0xFFFFFFFFU
|
||||
#define AES_TEXT_IN_0_M (AES_TEXT_IN_0_V << AES_TEXT_IN_0_S)
|
||||
#define AES_TEXT_IN_0_V 0xFFFFFFFFU
|
||||
#define AES_TEXT_IN_0_S 0
|
||||
|
||||
/** AES_TEXT_OUT_0_REG register
|
||||
* Result text data register 0
|
||||
*/
|
||||
#define AES_TEXT_OUT_0_REG (DR_REG_AES_BASE + 0x30)
|
||||
/** AES_TEXT_OUT_0 : R/W; bitpos: [31:0]; default: 0;
|
||||
* This bits stores text_out_0 that is a part of result text material.
|
||||
*/
|
||||
#define AES_TEXT_OUT_0 0xFFFFFFFFU
|
||||
#define AES_TEXT_OUT_0_M (AES_TEXT_OUT_0_V << AES_TEXT_OUT_0_S)
|
||||
#define AES_TEXT_OUT_0_V 0xFFFFFFFFU
|
||||
#define AES_TEXT_OUT_0_S 0
|
||||
|
||||
/** AES_TEXT_OUT_1_REG register
|
||||
* Result text data register 1
|
||||
*/
|
||||
#define AES_TEXT_OUT_1_REG (DR_REG_AES_BASE + 0x34)
|
||||
/** AES_TEXT_OUT_0 : R/W; bitpos: [31:0]; default: 0;
|
||||
* This bits stores text_out_0 that is a part of result text material.
|
||||
*/
|
||||
#define AES_TEXT_OUT_0 0xFFFFFFFFU
|
||||
#define AES_TEXT_OUT_0_M (AES_TEXT_OUT_0_V << AES_TEXT_OUT_0_S)
|
||||
#define AES_TEXT_OUT_0_V 0xFFFFFFFFU
|
||||
#define AES_TEXT_OUT_0_S 0
|
||||
|
||||
/** AES_TEXT_OUT_2_REG register
|
||||
* Result text data register 2
|
||||
*/
|
||||
#define AES_TEXT_OUT_2_REG (DR_REG_AES_BASE + 0x38)
|
||||
/** AES_TEXT_OUT_0 : R/W; bitpos: [31:0]; default: 0;
|
||||
* This bits stores text_out_0 that is a part of result text material.
|
||||
*/
|
||||
#define AES_TEXT_OUT_0 0xFFFFFFFFU
|
||||
#define AES_TEXT_OUT_0_M (AES_TEXT_OUT_0_V << AES_TEXT_OUT_0_S)
|
||||
#define AES_TEXT_OUT_0_V 0xFFFFFFFFU
|
||||
#define AES_TEXT_OUT_0_S 0
|
||||
|
||||
/** AES_TEXT_OUT_3_REG register
|
||||
* Result text data register 3
|
||||
*/
|
||||
#define AES_TEXT_OUT_3_REG (DR_REG_AES_BASE + 0x3c)
|
||||
/** AES_TEXT_OUT_0 : R/W; bitpos: [31:0]; default: 0;
|
||||
* This bits stores text_out_0 that is a part of result text material.
|
||||
*/
|
||||
#define AES_TEXT_OUT_0 0xFFFFFFFFU
|
||||
#define AES_TEXT_OUT_0_M (AES_TEXT_OUT_0_V << AES_TEXT_OUT_0_S)
|
||||
#define AES_TEXT_OUT_0_V 0xFFFFFFFFU
|
||||
#define AES_TEXT_OUT_0_S 0
|
||||
|
||||
/** AES_MODE_REG register
|
||||
* Defines key length and encryption / decryption
|
||||
*/
|
||||
#define AES_MODE_REG (DR_REG_AES_BASE + 0x40)
|
||||
/** AES_MODE : R/W; bitpos: [2:0]; default: 0;
|
||||
* Configures the key length and encryption / decryption of the AES accelerator.
|
||||
* 0: AES-128 encryption
|
||||
* 1: AES-192 encryption
|
||||
* 2: AES-256 encryption
|
||||
* 3: Reserved
|
||||
* 4: AES-128 decryption
|
||||
* 5: AES-192 decryption
|
||||
* 6: AES-256 decryption
|
||||
* 7: Reserved
|
||||
*/
|
||||
#define AES_MODE 0x00000007U
|
||||
#define AES_MODE_M (AES_MODE_V << AES_MODE_S)
|
||||
#define AES_MODE_V 0x00000007U
|
||||
#define AES_MODE_S 0
|
||||
/** AES_USE_HARDWARE_KEY : R/W; bitpos: [4]; default: 0;
|
||||
* Configures the AES accelerator use software key or hardware key.
|
||||
* 0: Software key.
|
||||
* 1: Hardware key.
|
||||
*/
|
||||
#define AES_USE_HARDWARE_KEY (BIT(4))
|
||||
#define AES_USE_HARDWARE_KEY_M (AES_USE_HARDWARE_KEY_V << AES_USE_HARDWARE_KEY_S)
|
||||
#define AES_USE_HARDWARE_KEY_V 0x00000001U
|
||||
#define AES_USE_HARDWARE_KEY_S 4
|
||||
|
||||
/** AES_TRIGGER_REG register
|
||||
* Operation start controlling register
|
||||
*/
|
||||
#define AES_TRIGGER_REG (DR_REG_AES_BASE + 0x48)
|
||||
/** AES_TRIGGER : WT; bitpos: [0]; default: 0;
|
||||
* Configures whether or not to start AES operation.
|
||||
* 0: No effect
|
||||
* 1: Start
|
||||
*/
|
||||
#define AES_TRIGGER (BIT(0))
|
||||
#define AES_TRIGGER_M (AES_TRIGGER_V << AES_TRIGGER_S)
|
||||
#define AES_TRIGGER_V 0x00000001U
|
||||
#define AES_TRIGGER_S 0
|
||||
|
||||
/** AES_STATE_REG register
|
||||
* Operation status register
|
||||
*/
|
||||
#define AES_STATE_REG (DR_REG_AES_BASE + 0x4c)
|
||||
/** AES_STATE : RO; bitpos: [1:0]; default: 0;
|
||||
* Represents the working status of the AES accelerator.
|
||||
* In Typical AES working mode:
|
||||
* 0: IDLE
|
||||
* 1: WORK
|
||||
* 2: No effect
|
||||
* 3: No effect
|
||||
* In DMA-AES working mode:
|
||||
* 0: IDLE
|
||||
* 1: WORK
|
||||
* 2: DONE
|
||||
* 3: No effect
|
||||
*/
|
||||
#define AES_STATE 0x00000003U
|
||||
#define AES_STATE_M (AES_STATE_V << AES_STATE_S)
|
||||
#define AES_STATE_V 0x00000003U
|
||||
#define AES_STATE_S 0
|
||||
|
||||
/** AES_IV_MEM register
|
||||
* The memory that stores initialization vector
|
||||
*/
|
||||
#define AES_IV_MEM (DR_REG_AES_BASE + 0x50)
|
||||
#define AES_IV_MEM_SIZE_BYTES 16
|
||||
|
||||
/** AES_H_MEM register
|
||||
* The memory that stores GCM hash subkey
|
||||
*/
|
||||
#define AES_H_MEM (DR_REG_AES_BASE + 0x60)
|
||||
#define AES_H_MEM_SIZE_BYTES 16
|
||||
|
||||
/** AES_J0_MEM register
|
||||
* The memory that stores J0
|
||||
*/
|
||||
#define AES_J0_MEM (DR_REG_AES_BASE + 0x70)
|
||||
#define AES_J0_MEM_SIZE_BYTES 16
|
||||
|
||||
/** AES_T0_MEM register
|
||||
* The memory that stores T0
|
||||
*/
|
||||
#define AES_T0_MEM (DR_REG_AES_BASE + 0x80)
|
||||
#define AES_T0_MEM_SIZE_BYTES 16
|
||||
|
||||
/** AES_DMA_ENABLE_REG register
|
||||
* Selects the working mode of the AES accelerator
|
||||
*/
|
||||
#define AES_DMA_ENABLE_REG (DR_REG_AES_BASE + 0x90)
|
||||
/** AES_DMA_ENABLE : R/W; bitpos: [0]; default: 0;
|
||||
* Configures the working mode of the AES accelerator.
|
||||
* 0: Typical AES
|
||||
* 1: DMA-AES
|
||||
*/
|
||||
#define AES_DMA_ENABLE (BIT(0))
|
||||
#define AES_DMA_ENABLE_M (AES_DMA_ENABLE_V << AES_DMA_ENABLE_S)
|
||||
#define AES_DMA_ENABLE_V 0x00000001U
|
||||
#define AES_DMA_ENABLE_S 0
|
||||
|
||||
/** AES_BLOCK_MODE_REG register
|
||||
* Defines the block cipher mode
|
||||
*/
|
||||
#define AES_BLOCK_MODE_REG (DR_REG_AES_BASE + 0x94)
|
||||
/** AES_BLOCK_MODE : R/W; bitpos: [2:0]; default: 0;
|
||||
* Configures the block cipher mode of the AES accelerator operating under the DMA-AES
|
||||
* working mode.
|
||||
* 0: ECB (Electronic Code Block)
|
||||
* 1: CBC (Cipher Block Chaining)
|
||||
* 2: OFB (Output FeedBack)
|
||||
* 3: CTR (Counter)
|
||||
* 4: CFB8 (8-bit Cipher FeedBack)
|
||||
* 5: CFB128 (128-bit Cipher FeedBack)
|
||||
* 6: GCM
|
||||
* 7: Reserved
|
||||
*/
|
||||
#define AES_BLOCK_MODE 0x00000007U
|
||||
#define AES_BLOCK_MODE_M (AES_BLOCK_MODE_V << AES_BLOCK_MODE_S)
|
||||
#define AES_BLOCK_MODE_V 0x00000007U
|
||||
#define AES_BLOCK_MODE_S 0
|
||||
|
||||
/** AES_BLOCK_NUM_REG register
|
||||
* Block number configuration register
|
||||
*/
|
||||
#define AES_BLOCK_NUM_REG (DR_REG_AES_BASE + 0x98)
|
||||
/** AES_BLOCK_NUM : R/W; bitpos: [31:0]; default: 0;
|
||||
* Represents the Block Number of plaintext or ciphertext when the AES accelerator
|
||||
* operates under the DMA-AES working mode. For details, see Section . "
|
||||
*/
|
||||
#define AES_BLOCK_NUM 0xFFFFFFFFU
|
||||
#define AES_BLOCK_NUM_M (AES_BLOCK_NUM_V << AES_BLOCK_NUM_S)
|
||||
#define AES_BLOCK_NUM_V 0xFFFFFFFFU
|
||||
#define AES_BLOCK_NUM_S 0
|
||||
|
||||
/** AES_INC_SEL_REG register
|
||||
* Standard incrementing function register
|
||||
*/
|
||||
#define AES_INC_SEL_REG (DR_REG_AES_BASE + 0x9c)
|
||||
/** AES_INC_SEL : R/W; bitpos: [0]; default: 0;
|
||||
* Configures the Standard Incrementing Function for CTR block operation.
|
||||
* 0: INC_32
|
||||
* 1: INC_128
|
||||
*/
|
||||
#define AES_INC_SEL (BIT(0))
|
||||
#define AES_INC_SEL_M (AES_INC_SEL_V << AES_INC_SEL_S)
|
||||
#define AES_INC_SEL_V 0x00000001U
|
||||
#define AES_INC_SEL_S 0
|
||||
|
||||
/** AES_INT_CLEAR_REG register
|
||||
* DMA-AES interrupt clear register
|
||||
*/
|
||||
#define AES_INT_CLEAR_REG (DR_REG_AES_BASE + 0xac)
|
||||
/** AES_INT_CLEAR : WT; bitpos: [0]; default: 0;
|
||||
* Configures whether or not to clear AES interrupt.
|
||||
* 0: No effect
|
||||
* 1: Clear
|
||||
*/
|
||||
#define AES_INT_CLEAR (BIT(0))
|
||||
#define AES_INT_CLEAR_M (AES_INT_CLEAR_V << AES_INT_CLEAR_S)
|
||||
#define AES_INT_CLEAR_V 0x00000001U
|
||||
#define AES_INT_CLEAR_S 0
|
||||
|
||||
/** AES_INT_ENA_REG register
|
||||
* DMA-AES interrupt enable register
|
||||
*/
|
||||
#define AES_INT_ENA_REG (DR_REG_AES_BASE + 0xb0)
|
||||
/** AES_INT_ENA : R/W; bitpos: [0]; default: 0;
|
||||
* Configures whether or not to enable AES interrupt.
|
||||
* 0: Disable
|
||||
* 1: Enable
|
||||
*/
|
||||
#define AES_INT_ENA (BIT(0))
|
||||
#define AES_INT_ENA_M (AES_INT_ENA_V << AES_INT_ENA_S)
|
||||
#define AES_INT_ENA_V 0x00000001U
|
||||
#define AES_INT_ENA_S 0
|
||||
|
||||
/** AES_DATE_REG register
|
||||
* AES version control register
|
||||
*/
|
||||
#define AES_DATE_REG (DR_REG_AES_BASE + 0xb4)
|
||||
/** AES_DATE : R/W; bitpos: [27:0]; default: 38826624;
|
||||
* This bits stores the version information of AES.
|
||||
*/
|
||||
#define AES_DATE 0x0FFFFFFFU
|
||||
#define AES_DATE_M (AES_DATE_V << AES_DATE_S)
|
||||
#define AES_DATE_V 0x0FFFFFFFU
|
||||
#define AES_DATE_S 0
|
||||
|
||||
/** AES_DMA_EXIT_REG register
|
||||
* Operation exit controlling register
|
||||
*/
|
||||
#define AES_DMA_EXIT_REG (DR_REG_AES_BASE + 0xb8)
|
||||
/** AES_DMA_EXIT : WT; bitpos: [0]; default: 0;
|
||||
* Configures whether or not to exit AES operation.
|
||||
* 0: No effect
|
||||
* 1: Exit
|
||||
* Only valid for DMA-AES operation.
|
||||
*/
|
||||
#define AES_DMA_EXIT (BIT(0))
|
||||
#define AES_DMA_EXIT_M (AES_DMA_EXIT_V << AES_DMA_EXIT_S)
|
||||
#define AES_DMA_EXIT_V 0x00000001U
|
||||
#define AES_DMA_EXIT_S 0
|
||||
|
||||
/** AES_RX_RESET_REG register
|
||||
* AES-DMA reset rx-fifo register
|
||||
*/
|
||||
#define AES_RX_RESET_REG (DR_REG_AES_BASE + 0xc0)
|
||||
/** AES_RX_RESET : WT; bitpos: [0]; default: 0;
|
||||
* Set this bit to reset rx_fifo under dma_aes working mode.
|
||||
*/
|
||||
#define AES_RX_RESET (BIT(0))
|
||||
#define AES_RX_RESET_M (AES_RX_RESET_V << AES_RX_RESET_S)
|
||||
#define AES_RX_RESET_V 0x00000001U
|
||||
#define AES_RX_RESET_S 0
|
||||
|
||||
/** AES_TX_RESET_REG register
|
||||
* AES-DMA reset tx-fifo register
|
||||
*/
|
||||
#define AES_TX_RESET_REG (DR_REG_AES_BASE + 0xc4)
|
||||
/** AES_TX_RESET : WT; bitpos: [0]; default: 0;
|
||||
* Set this bit to reset tx_fifo under dma_aes working mode.
|
||||
*/
|
||||
#define AES_TX_RESET (BIT(0))
|
||||
#define AES_TX_RESET_M (AES_TX_RESET_V << AES_TX_RESET_S)
|
||||
#define AES_TX_RESET_V 0x00000001U
|
||||
#define AES_TX_RESET_S 0
|
||||
|
||||
/** AES_PSEUDO_REG register
|
||||
* AES PSEUDO function configure register
|
||||
*/
|
||||
#define AES_PSEUDO_REG (DR_REG_AES_BASE + 0xd0)
|
||||
/** AES_PSEUDO_EN : R/W; bitpos: [0]; default: 0;
|
||||
* This bit decides whether the pseudo round function is enable or not.
|
||||
*/
|
||||
#define AES_PSEUDO_EN (BIT(0))
|
||||
#define AES_PSEUDO_EN_M (AES_PSEUDO_EN_V << AES_PSEUDO_EN_S)
|
||||
#define AES_PSEUDO_EN_V 0x00000001U
|
||||
#define AES_PSEUDO_EN_S 0
|
||||
/** AES_PSEUDO_BASE : R/W; bitpos: [4:1]; default: 2;
|
||||
* Those bits decides the basic number of pseudo round number.
|
||||
*/
|
||||
#define AES_PSEUDO_BASE 0x0000000FU
|
||||
#define AES_PSEUDO_BASE_M (AES_PSEUDO_BASE_V << AES_PSEUDO_BASE_S)
|
||||
#define AES_PSEUDO_BASE_V 0x0000000FU
|
||||
#define AES_PSEUDO_BASE_S 1
|
||||
/** AES_PSEUDO_INC : R/W; bitpos: [6:5]; default: 2;
|
||||
* Those bits decides the increment number of pseudo round number
|
||||
*/
|
||||
#define AES_PSEUDO_INC 0x00000003U
|
||||
#define AES_PSEUDO_INC_M (AES_PSEUDO_INC_V << AES_PSEUDO_INC_S)
|
||||
#define AES_PSEUDO_INC_V 0x00000003U
|
||||
#define AES_PSEUDO_INC_S 5
|
||||
/** AES_PSEUDO_RNG_CNT : R/W; bitpos: [9:7]; default: 7;
|
||||
* Those bits decides the update frequency of the pseudo-key.
|
||||
*/
|
||||
#define AES_PSEUDO_RNG_CNT 0x00000007U
|
||||
#define AES_PSEUDO_RNG_CNT_M (AES_PSEUDO_RNG_CNT_V << AES_PSEUDO_RNG_CNT_S)
|
||||
#define AES_PSEUDO_RNG_CNT_V 0x00000007U
|
||||
#define AES_PSEUDO_RNG_CNT_S 7
|
||||
|
||||
/** AES_FREE_REG register
|
||||
* AES free state register
|
||||
*/
|
||||
#define AES_FREE_REG (DR_REG_AES_BASE + 0xd4)
|
||||
/** AES_FREE : R/W; bitpos: [0]; default: 1;
|
||||
* 0: AES is non-free;
|
||||
* 1:AES is free.
|
||||
*/
|
||||
#define AES_FREE (BIT(0))
|
||||
#define AES_FREE_M (AES_FREE_V << AES_FREE_S)
|
||||
#define AES_FREE_V 0x00000001U
|
||||
#define AES_FREE_S 0
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
376
components/soc/esp32s31/register/soc/aes_struct.h
Normal file
376
components/soc/esp32s31/register/soc/aes_struct.h
Normal file
@@ -0,0 +1,376 @@
|
||||
/**
|
||||
* SPDX-FileCopyrightText: 2025 Espressif Systems (Shanghai) CO LTD
|
||||
*
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
*/
|
||||
#pragma once
|
||||
|
||||
#include <stdint.h>
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
/** Group: Key Registers */
|
||||
/** Type of key_n register
|
||||
* AES key data register n
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** key_0 : R/W; bitpos: [31:0]; default: 0;
|
||||
* This bits stores key_0 that is a part of key material.
|
||||
*/
|
||||
uint32_t key_0:32;
|
||||
};
|
||||
uint32_t val;
|
||||
} aes_key_n_reg_t;
|
||||
|
||||
|
||||
/** Group: TEXT_IN Registers */
|
||||
/** Type of text_in_n register
|
||||
* Source text data register n
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** text_in_0 : R/W; bitpos: [31:0]; default: 0;
|
||||
* This bits stores text_in_0 that is a part of source text material.
|
||||
*/
|
||||
uint32_t text_in_0:32;
|
||||
};
|
||||
uint32_t val;
|
||||
} aes_text_in_n_reg_t;
|
||||
|
||||
|
||||
/** Group: TEXT_OUT Registers */
|
||||
/** Type of text_out_n register
|
||||
* Result text data register n
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** text_out_0 : R/W; bitpos: [31:0]; default: 0;
|
||||
* This bits stores text_out_0 that is a part of result text material.
|
||||
*/
|
||||
uint32_t text_out_0:32;
|
||||
};
|
||||
uint32_t val;
|
||||
} aes_text_out_n_reg_t;
|
||||
|
||||
|
||||
/** Group: Control / Configuration Registers */
|
||||
/** Type of mode register
|
||||
* Defines key length and encryption / decryption
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** mode : R/W; bitpos: [2:0]; default: 0;
|
||||
* Configures the key length and encryption / decryption of the AES accelerator.
|
||||
* 0: AES-128 encryption
|
||||
* 1: AES-192 encryption
|
||||
* 2: AES-256 encryption
|
||||
* 3: Reserved
|
||||
* 4: AES-128 decryption
|
||||
* 5: AES-192 decryption
|
||||
* 6: AES-256 decryption
|
||||
* 7: Reserved
|
||||
*/
|
||||
uint32_t mode:3;
|
||||
uint32_t reserved_3:1;
|
||||
/** use_hardware_key : R/W; bitpos: [4]; default: 0;
|
||||
* Configures the AES accelerator use software key or hardware key.
|
||||
* 0: Software key.
|
||||
* 1: Hardware key.
|
||||
*/
|
||||
uint32_t use_hardware_key:1;
|
||||
uint32_t reserved_5:27;
|
||||
};
|
||||
uint32_t val;
|
||||
} aes_mode_reg_t;
|
||||
|
||||
/** Type of trigger register
|
||||
* Operation start controlling register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** trigger : WT; bitpos: [0]; default: 0;
|
||||
* Configures whether or not to start AES operation.
|
||||
* 0: No effect
|
||||
* 1: Start
|
||||
*/
|
||||
uint32_t trigger:1;
|
||||
uint32_t reserved_1:31;
|
||||
};
|
||||
uint32_t val;
|
||||
} aes_trigger_reg_t;
|
||||
|
||||
/** Type of dma_enable register
|
||||
* Selects the working mode of the AES accelerator
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** dma_enable : R/W; bitpos: [0]; default: 0;
|
||||
* Configures the working mode of the AES accelerator.
|
||||
* 0: Typical AES
|
||||
* 1: DMA-AES
|
||||
*/
|
||||
uint32_t dma_enable:1;
|
||||
uint32_t reserved_1:31;
|
||||
};
|
||||
uint32_t val;
|
||||
} aes_dma_enable_reg_t;
|
||||
|
||||
/** Type of block_mode register
|
||||
* Defines the block cipher mode
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** block_mode : R/W; bitpos: [2:0]; default: 0;
|
||||
* Configures the block cipher mode of the AES accelerator operating under the DMA-AES
|
||||
* working mode.
|
||||
* 0: ECB (Electronic Code Block)
|
||||
* 1: CBC (Cipher Block Chaining)
|
||||
* 2: OFB (Output FeedBack)
|
||||
* 3: CTR (Counter)
|
||||
* 4: CFB8 (8-bit Cipher FeedBack)
|
||||
* 5: CFB128 (128-bit Cipher FeedBack)
|
||||
* 6: GCM
|
||||
* 7: Reserved
|
||||
*/
|
||||
uint32_t block_mode:3;
|
||||
uint32_t reserved_3:29;
|
||||
};
|
||||
uint32_t val;
|
||||
} aes_block_mode_reg_t;
|
||||
|
||||
/** Type of block_num register
|
||||
* Block number configuration register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** block_num : R/W; bitpos: [31:0]; default: 0;
|
||||
* Represents the Block Number of plaintext or ciphertext when the AES accelerator
|
||||
* operates under the DMA-AES working mode. For details, see Section . "
|
||||
*/
|
||||
uint32_t block_num:32;
|
||||
};
|
||||
uint32_t val;
|
||||
} aes_block_num_reg_t;
|
||||
|
||||
/** Type of inc_sel register
|
||||
* Standard incrementing function register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** inc_sel : R/W; bitpos: [0]; default: 0;
|
||||
* Configures the Standard Incrementing Function for CTR block operation.
|
||||
* 0: INC_32
|
||||
* 1: INC_128
|
||||
*/
|
||||
uint32_t inc_sel:1;
|
||||
uint32_t reserved_1:31;
|
||||
};
|
||||
uint32_t val;
|
||||
} aes_inc_sel_reg_t;
|
||||
|
||||
/** Type of dma_exit register
|
||||
* Operation exit controlling register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** dma_exit : WT; bitpos: [0]; default: 0;
|
||||
* Configures whether or not to exit AES operation.
|
||||
* 0: No effect
|
||||
* 1: Exit
|
||||
* Only valid for DMA-AES operation.
|
||||
*/
|
||||
uint32_t dma_exit:1;
|
||||
uint32_t reserved_1:31;
|
||||
};
|
||||
uint32_t val;
|
||||
} aes_dma_exit_reg_t;
|
||||
|
||||
/** Type of rx_reset register
|
||||
* AES-DMA reset rx-fifo register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** rx_reset : WT; bitpos: [0]; default: 0;
|
||||
* Set this bit to reset rx_fifo under dma_aes working mode.
|
||||
*/
|
||||
uint32_t rx_reset:1;
|
||||
uint32_t reserved_1:31;
|
||||
};
|
||||
uint32_t val;
|
||||
} aes_rx_reset_reg_t;
|
||||
|
||||
/** Type of tx_reset register
|
||||
* AES-DMA reset tx-fifo register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** tx_reset : WT; bitpos: [0]; default: 0;
|
||||
* Set this bit to reset tx_fifo under dma_aes working mode.
|
||||
*/
|
||||
uint32_t tx_reset:1;
|
||||
uint32_t reserved_1:31;
|
||||
};
|
||||
uint32_t val;
|
||||
} aes_tx_reset_reg_t;
|
||||
|
||||
|
||||
/** Group: Configuration register */
|
||||
/** Type of pseudo register
|
||||
* AES PSEUDO function configure register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** pseudo_en : R/W; bitpos: [0]; default: 0;
|
||||
* This bit decides whether the pseudo round function is enable or not.
|
||||
*/
|
||||
uint32_t pseudo_en:1;
|
||||
/** pseudo_base : R/W; bitpos: [4:1]; default: 2;
|
||||
* Those bits decides the basic number of pseudo round number.
|
||||
*/
|
||||
uint32_t pseudo_base:4;
|
||||
/** pseudo_inc : R/W; bitpos: [6:5]; default: 2;
|
||||
* Those bits decides the increment number of pseudo round number
|
||||
*/
|
||||
uint32_t pseudo_inc:2;
|
||||
/** pseudo_rng_cnt : R/W; bitpos: [9:7]; default: 7;
|
||||
* Those bits decides the update frequency of the pseudo-key.
|
||||
*/
|
||||
uint32_t pseudo_rng_cnt:3;
|
||||
uint32_t reserved_10:22;
|
||||
};
|
||||
uint32_t val;
|
||||
} aes_pseudo_reg_t;
|
||||
|
||||
|
||||
/** Group: Status Register */
|
||||
/** Type of state register
|
||||
* Operation status register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** state : RO; bitpos: [1:0]; default: 0;
|
||||
* Represents the working status of the AES accelerator.
|
||||
* In Typical AES working mode:
|
||||
* 0: IDLE
|
||||
* 1: WORK
|
||||
* 2: No effect
|
||||
* 3: No effect
|
||||
* In DMA-AES working mode:
|
||||
* 0: IDLE
|
||||
* 1: WORK
|
||||
* 2: DONE
|
||||
* 3: No effect
|
||||
*/
|
||||
uint32_t state:2;
|
||||
uint32_t reserved_2:30;
|
||||
};
|
||||
uint32_t val;
|
||||
} aes_state_reg_t;
|
||||
|
||||
/** Type of free register
|
||||
* AES free state register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** free : R/W; bitpos: [0]; default: 1;
|
||||
* 0: AES is non-free;
|
||||
* 1:AES is free.
|
||||
*/
|
||||
uint32_t free:1;
|
||||
uint32_t reserved_1:31;
|
||||
};
|
||||
uint32_t val;
|
||||
} aes_free_reg_t;
|
||||
|
||||
|
||||
/** Group: memory type */
|
||||
|
||||
/** Group: Interrupt Registers */
|
||||
/** Type of int_clear register
|
||||
* DMA-AES interrupt clear register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** int_clear : WT; bitpos: [0]; default: 0;
|
||||
* Configures whether or not to clear AES interrupt.
|
||||
* 0: No effect
|
||||
* 1: Clear
|
||||
*/
|
||||
uint32_t int_clear:1;
|
||||
uint32_t reserved_1:31;
|
||||
};
|
||||
uint32_t val;
|
||||
} aes_int_clear_reg_t;
|
||||
|
||||
/** Type of int_ena register
|
||||
* DMA-AES interrupt enable register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** int_ena : R/W; bitpos: [0]; default: 0;
|
||||
* Configures whether or not to enable AES interrupt.
|
||||
* 0: Disable
|
||||
* 1: Enable
|
||||
*/
|
||||
uint32_t int_ena:1;
|
||||
uint32_t reserved_1:31;
|
||||
};
|
||||
uint32_t val;
|
||||
} aes_int_ena_reg_t;
|
||||
|
||||
|
||||
/** Group: Version control register */
|
||||
/** Type of date register
|
||||
* AES version control register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** date : R/W; bitpos: [27:0]; default: 38826624;
|
||||
* This bits stores the version information of AES.
|
||||
*/
|
||||
uint32_t date:28;
|
||||
uint32_t reserved_28:4;
|
||||
};
|
||||
uint32_t val;
|
||||
} aes_date_reg_t;
|
||||
|
||||
|
||||
typedef struct {
|
||||
volatile aes_key_n_reg_t key_n[8];
|
||||
volatile aes_text_in_n_reg_t text_in_n[4];
|
||||
volatile aes_text_out_n_reg_t text_out_n[4];
|
||||
volatile aes_mode_reg_t mode;
|
||||
uint32_t reserved_044;
|
||||
volatile aes_trigger_reg_t trigger;
|
||||
volatile aes_state_reg_t state;
|
||||
volatile uint32_t iv[4];
|
||||
volatile uint32_t h[4];
|
||||
volatile uint32_t j0[4];
|
||||
volatile uint32_t t0[4];
|
||||
volatile aes_dma_enable_reg_t dma_enable;
|
||||
volatile aes_block_mode_reg_t block_mode;
|
||||
volatile aes_block_num_reg_t block_num;
|
||||
volatile aes_inc_sel_reg_t inc_sel;
|
||||
uint32_t reserved_0a0[3];
|
||||
volatile aes_int_clear_reg_t int_clear;
|
||||
volatile aes_int_ena_reg_t int_ena;
|
||||
volatile aes_date_reg_t date;
|
||||
volatile aes_dma_exit_reg_t dma_exit;
|
||||
uint32_t reserved_0bc;
|
||||
volatile aes_rx_reset_reg_t rx_reset;
|
||||
volatile aes_tx_reset_reg_t tx_reset;
|
||||
uint32_t reserved_0c8[2];
|
||||
volatile aes_pseudo_reg_t pseudo;
|
||||
volatile aes_free_reg_t free;
|
||||
} aes_dev_t;
|
||||
|
||||
|
||||
#ifndef __cplusplus
|
||||
_Static_assert(sizeof(aes_dev_t) == 0xd8, "Invalid size of aes_dev_t structure");
|
||||
#endif
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
6419
components/soc/esp32s31/register/soc/ahb_dma_reg.h
Normal file
6419
components/soc/esp32s31/register/soc/ahb_dma_reg.h
Normal file
File diff suppressed because it is too large
Load Diff
1582
components/soc/esp32s31/register/soc/ahb_dma_struct.h
Normal file
1582
components/soc/esp32s31/register/soc/ahb_dma_struct.h
Normal file
File diff suppressed because it is too large
Load Diff
650
components/soc/esp32s31/register/soc/asrc_reg.h
Normal file
650
components/soc/esp32s31/register/soc/asrc_reg.h
Normal file
@@ -0,0 +1,650 @@
|
||||
/**
|
||||
* SPDX-FileCopyrightText: 2025 Espressif Systems (Shanghai) CO LTD
|
||||
*
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
*/
|
||||
#pragma once
|
||||
|
||||
#include <stdint.h>
|
||||
#include "soc/soc.h"
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
/** ASRC_CHNL0_CFG0_REG register
|
||||
* Control and configuration registers
|
||||
*/
|
||||
#define ASRC_CHNL0_CFG0_REG (DR_REG_ASRC_BASE + 0x0)
|
||||
/** ASRC_CHNL0_RS2_STG1_BYPASS : R/W; bitpos: [0]; default: 1;
|
||||
* Set this bit to bypass stage 1 re-sampler in channel0.
|
||||
*/
|
||||
#define ASRC_CHNL0_RS2_STG1_BYPASS (BIT(0))
|
||||
#define ASRC_CHNL0_RS2_STG1_BYPASS_M (ASRC_CHNL0_RS2_STG1_BYPASS_V << ASRC_CHNL0_RS2_STG1_BYPASS_S)
|
||||
#define ASRC_CHNL0_RS2_STG1_BYPASS_V 0x00000001U
|
||||
#define ASRC_CHNL0_RS2_STG1_BYPASS_S 0
|
||||
/** ASRC_CHNL0_RS2_STG0_BYPASS : R/W; bitpos: [1]; default: 1;
|
||||
* Set this bit to bypass stage 0 re-sampler in channel0.
|
||||
*/
|
||||
#define ASRC_CHNL0_RS2_STG0_BYPASS (BIT(1))
|
||||
#define ASRC_CHNL0_RS2_STG0_BYPASS_M (ASRC_CHNL0_RS2_STG0_BYPASS_V << ASRC_CHNL0_RS2_STG0_BYPASS_S)
|
||||
#define ASRC_CHNL0_RS2_STG0_BYPASS_V 0x00000001U
|
||||
#define ASRC_CHNL0_RS2_STG0_BYPASS_S 1
|
||||
/** ASRC_CHNL0_FRAC_BYPASS : R/W; bitpos: [2]; default: 1;
|
||||
* Set this bit to bypass fractional re-sampler in channel0.
|
||||
*/
|
||||
#define ASRC_CHNL0_FRAC_BYPASS (BIT(2))
|
||||
#define ASRC_CHNL0_FRAC_BYPASS_M (ASRC_CHNL0_FRAC_BYPASS_V << ASRC_CHNL0_FRAC_BYPASS_S)
|
||||
#define ASRC_CHNL0_FRAC_BYPASS_V 0x00000001U
|
||||
#define ASRC_CHNL0_FRAC_BYPASS_S 2
|
||||
/** ASRC_CHNL0_RS2_STG1_MODE : R/W; bitpos: [3]; default: 0;
|
||||
* Write this bit to configure stage 1 re-sampler mode in channel0, 0: interpolation
|
||||
* by factor of 2, 1: decimation by factor of 2.
|
||||
*/
|
||||
#define ASRC_CHNL0_RS2_STG1_MODE (BIT(3))
|
||||
#define ASRC_CHNL0_RS2_STG1_MODE_M (ASRC_CHNL0_RS2_STG1_MODE_V << ASRC_CHNL0_RS2_STG1_MODE_S)
|
||||
#define ASRC_CHNL0_RS2_STG1_MODE_V 0x00000001U
|
||||
#define ASRC_CHNL0_RS2_STG1_MODE_S 3
|
||||
/** ASRC_CHNL0_RS2_STG0_MODE : R/W; bitpos: [4]; default: 0;
|
||||
* Write this bit to configure stage 0 re-sampler mode in channel0, 0: interpolation
|
||||
* by factor of 2, 1: decimation by factor of 2.
|
||||
*/
|
||||
#define ASRC_CHNL0_RS2_STG0_MODE (BIT(4))
|
||||
#define ASRC_CHNL0_RS2_STG0_MODE_M (ASRC_CHNL0_RS2_STG0_MODE_V << ASRC_CHNL0_RS2_STG0_MODE_S)
|
||||
#define ASRC_CHNL0_RS2_STG0_MODE_V 0x00000001U
|
||||
#define ASRC_CHNL0_RS2_STG0_MODE_S 4
|
||||
/** ASRC_CHNL0_FRAC_AHEAD : R/W; bitpos: [5]; default: 0;
|
||||
* Set this bit to move fraction re-sampler to the first stage in channel0, it should
|
||||
* be 1 when input frequency is higher the output.
|
||||
*/
|
||||
#define ASRC_CHNL0_FRAC_AHEAD (BIT(5))
|
||||
#define ASRC_CHNL0_FRAC_AHEAD_M (ASRC_CHNL0_FRAC_AHEAD_V << ASRC_CHNL0_FRAC_AHEAD_S)
|
||||
#define ASRC_CHNL0_FRAC_AHEAD_V 0x00000001U
|
||||
#define ASRC_CHNL0_FRAC_AHEAD_S 5
|
||||
/** ASRC_CHNL0_MODE : R/W; bitpos: [8:7]; default: 0;
|
||||
* Write the bit to configure the channel mode,0: in and out are both mono, 1: in and
|
||||
* out is both dual, 2: in is mono, out is dual, 3, in is dual, out is mono.
|
||||
*/
|
||||
#define ASRC_CHNL0_MODE 0x00000003U
|
||||
#define ASRC_CHNL0_MODE_M (ASRC_CHNL0_MODE_V << ASRC_CHNL0_MODE_S)
|
||||
#define ASRC_CHNL0_MODE_V 0x00000003U
|
||||
#define ASRC_CHNL0_MODE_S 7
|
||||
/** ASRC_CHNL0_SEL : R/W; bitpos: [9]; default: 0;
|
||||
* Write the bit to configure which 16bits data will be processing.
|
||||
*/
|
||||
#define ASRC_CHNL0_SEL (BIT(9))
|
||||
#define ASRC_CHNL0_SEL_M (ASRC_CHNL0_SEL_V << ASRC_CHNL0_SEL_S)
|
||||
#define ASRC_CHNL0_SEL_V 0x00000001U
|
||||
#define ASRC_CHNL0_SEL_S 9
|
||||
|
||||
/** ASRC_CHNL0_CFG1_REG register
|
||||
* Control and configuration registers
|
||||
*/
|
||||
#define ASRC_CHNL0_CFG1_REG (DR_REG_ASRC_BASE + 0x4)
|
||||
/** ASRC_CHNL0_FRAC_M : R/W; bitpos: [9:0]; default: 0;
|
||||
* Write the bits to specify the denominator of factor of fraction re-sampler in
|
||||
* channel0, reg_chnl0_frac_m and reg_chnl0_frac_l are relatively prime.
|
||||
*/
|
||||
#define ASRC_CHNL0_FRAC_M 0x000003FFU
|
||||
#define ASRC_CHNL0_FRAC_M_M (ASRC_CHNL0_FRAC_M_V << ASRC_CHNL0_FRAC_M_S)
|
||||
#define ASRC_CHNL0_FRAC_M_V 0x000003FFU
|
||||
#define ASRC_CHNL0_FRAC_M_S 0
|
||||
/** ASRC_CHNL0_FRAC_L : R/W; bitpos: [19:10]; default: 0;
|
||||
* Write the bits to specify the nominator of factor of fraction re-sampler in
|
||||
* channel0, reg_chnl0_frac_l and reg_chnl0_frac_m are relatively prime.
|
||||
*/
|
||||
#define ASRC_CHNL0_FRAC_L 0x000003FFU
|
||||
#define ASRC_CHNL0_FRAC_L_M (ASRC_CHNL0_FRAC_L_V << ASRC_CHNL0_FRAC_L_S)
|
||||
#define ASRC_CHNL0_FRAC_L_V 0x000003FFU
|
||||
#define ASRC_CHNL0_FRAC_L_S 10
|
||||
|
||||
/** ASRC_CHNL0_CFG2_REG register
|
||||
* Control and configuration registers
|
||||
*/
|
||||
#define ASRC_CHNL0_CFG2_REG (DR_REG_ASRC_BASE + 0x8)
|
||||
/** ASRC_CHNL0_FRAC_RECIPL : R/W; bitpos: [19:0]; default: 0;
|
||||
* Write the bits with ((2^19+L)/(2L)) round down in channel0.
|
||||
*/
|
||||
#define ASRC_CHNL0_FRAC_RECIPL 0x000FFFFFU
|
||||
#define ASRC_CHNL0_FRAC_RECIPL_M (ASRC_CHNL0_FRAC_RECIPL_V << ASRC_CHNL0_FRAC_RECIPL_S)
|
||||
#define ASRC_CHNL0_FRAC_RECIPL_V 0x000FFFFFU
|
||||
#define ASRC_CHNL0_FRAC_RECIPL_S 0
|
||||
|
||||
/** ASRC_CHNL0_CFG3_REG register
|
||||
* Control and configuration registers
|
||||
*/
|
||||
#define ASRC_CHNL0_CFG3_REG (DR_REG_ASRC_BASE + 0xc)
|
||||
/** ASRC_CHNL0_RESET : WT; bitpos: [0]; default: 0;
|
||||
* Set this bit to reset channel0.
|
||||
*/
|
||||
#define ASRC_CHNL0_RESET (BIT(0))
|
||||
#define ASRC_CHNL0_RESET_M (ASRC_CHNL0_RESET_V << ASRC_CHNL0_RESET_S)
|
||||
#define ASRC_CHNL0_RESET_V 0x00000001U
|
||||
#define ASRC_CHNL0_RESET_S 0
|
||||
|
||||
/** ASRC_CHNL0_CFG4_REG register
|
||||
* Control and configuration registers
|
||||
*/
|
||||
#define ASRC_CHNL0_CFG4_REG (DR_REG_ASRC_BASE + 0x10)
|
||||
/** ASRC_CHNL0_START : R/W; bitpos: [0]; default: 0;
|
||||
* Set this bit to start channel0.
|
||||
*/
|
||||
#define ASRC_CHNL0_START (BIT(0))
|
||||
#define ASRC_CHNL0_START_M (ASRC_CHNL0_START_V << ASRC_CHNL0_START_S)
|
||||
#define ASRC_CHNL0_START_V 0x00000001U
|
||||
#define ASRC_CHNL0_START_S 0
|
||||
|
||||
/** ASRC_CHNL0_CFG5_REG register
|
||||
* Control and configuration registers
|
||||
*/
|
||||
#define ASRC_CHNL0_CFG5_REG (DR_REG_ASRC_BASE + 0x14)
|
||||
/** ASRC_CHNL0_IN_CNT_ENA : R/W; bitpos: [0]; default: 0;
|
||||
* Set this bit to enable in data byte counter.
|
||||
*/
|
||||
#define ASRC_CHNL0_IN_CNT_ENA (BIT(0))
|
||||
#define ASRC_CHNL0_IN_CNT_ENA_M (ASRC_CHNL0_IN_CNT_ENA_V << ASRC_CHNL0_IN_CNT_ENA_S)
|
||||
#define ASRC_CHNL0_IN_CNT_ENA_V 0x00000001U
|
||||
#define ASRC_CHNL0_IN_CNT_ENA_S 0
|
||||
/** ASRC_CHNL0_IN_CNT_CLR : WT; bitpos: [1]; default: 0;
|
||||
* Set this bit to clear in data byte counter.
|
||||
*/
|
||||
#define ASRC_CHNL0_IN_CNT_CLR (BIT(1))
|
||||
#define ASRC_CHNL0_IN_CNT_CLR_M (ASRC_CHNL0_IN_CNT_CLR_V << ASRC_CHNL0_IN_CNT_CLR_S)
|
||||
#define ASRC_CHNL0_IN_CNT_CLR_V 0x00000001U
|
||||
#define ASRC_CHNL0_IN_CNT_CLR_S 1
|
||||
/** ASRC_CHNL0_IN_LEN : R/W; bitpos: [31:8]; default: 0;
|
||||
* Write the bits to specify the data byte number of data from the DMA
|
||||
*/
|
||||
#define ASRC_CHNL0_IN_LEN 0x00FFFFFFU
|
||||
#define ASRC_CHNL0_IN_LEN_M (ASRC_CHNL0_IN_LEN_V << ASRC_CHNL0_IN_LEN_S)
|
||||
#define ASRC_CHNL0_IN_LEN_V 0x00FFFFFFU
|
||||
#define ASRC_CHNL0_IN_LEN_S 8
|
||||
|
||||
/** ASRC_CHNL0_CFG6_REG register
|
||||
* Control and configuration registers
|
||||
*/
|
||||
#define ASRC_CHNL0_CFG6_REG (DR_REG_ASRC_BASE + 0x18)
|
||||
/** ASRC_CHNL0_OUT_EOF_GEN_MODE : R/W; bitpos: [1:0]; default: 0;
|
||||
* Write the bits to specify the which eof will be written to DMA. 0: counter eof, 1:
|
||||
* DMA ineof, 2: both counter eof and DMA ineof, 3 none.
|
||||
*/
|
||||
#define ASRC_CHNL0_OUT_EOF_GEN_MODE 0x00000003U
|
||||
#define ASRC_CHNL0_OUT_EOF_GEN_MODE_M (ASRC_CHNL0_OUT_EOF_GEN_MODE_V << ASRC_CHNL0_OUT_EOF_GEN_MODE_S)
|
||||
#define ASRC_CHNL0_OUT_EOF_GEN_MODE_V 0x00000003U
|
||||
#define ASRC_CHNL0_OUT_EOF_GEN_MODE_S 0
|
||||
/** ASRC_CHNL0_OUT_CNT_ENA : R/W; bitpos: [2]; default: 0;
|
||||
* Set this bit to enable out data byte counter.
|
||||
*/
|
||||
#define ASRC_CHNL0_OUT_CNT_ENA (BIT(2))
|
||||
#define ASRC_CHNL0_OUT_CNT_ENA_M (ASRC_CHNL0_OUT_CNT_ENA_V << ASRC_CHNL0_OUT_CNT_ENA_S)
|
||||
#define ASRC_CHNL0_OUT_CNT_ENA_V 0x00000001U
|
||||
#define ASRC_CHNL0_OUT_CNT_ENA_S 2
|
||||
/** ASRC_CHNL0_OUT_CNT_CLR : WT; bitpos: [3]; default: 0;
|
||||
* Set this bit to clear out data byte counter.
|
||||
*/
|
||||
#define ASRC_CHNL0_OUT_CNT_CLR (BIT(3))
|
||||
#define ASRC_CHNL0_OUT_CNT_CLR_M (ASRC_CHNL0_OUT_CNT_CLR_V << ASRC_CHNL0_OUT_CNT_CLR_S)
|
||||
#define ASRC_CHNL0_OUT_CNT_CLR_V 0x00000001U
|
||||
#define ASRC_CHNL0_OUT_CNT_CLR_S 3
|
||||
/** ASRC_CHNL0_OUT_LEN_COMP : R/W; bitpos: [4]; default: 0;
|
||||
* Set this bit to enable out data byte counter compensation when using fractional
|
||||
* re-sampler and decimation by factor of 2 which results in reg_chnl0_out_cnt >=
|
||||
* reg_chnl0_out_len
|
||||
*/
|
||||
#define ASRC_CHNL0_OUT_LEN_COMP (BIT(4))
|
||||
#define ASRC_CHNL0_OUT_LEN_COMP_M (ASRC_CHNL0_OUT_LEN_COMP_V << ASRC_CHNL0_OUT_LEN_COMP_S)
|
||||
#define ASRC_CHNL0_OUT_LEN_COMP_V 0x00000001U
|
||||
#define ASRC_CHNL0_OUT_LEN_COMP_S 4
|
||||
/** ASRC_CHNL0_OUT_LEN : R/W; bitpos: [31:8]; default: 0;
|
||||
* Write the bits to specify the data byte number of data to the DMA, the counter eof
|
||||
* will be set when the counter approaches.
|
||||
*/
|
||||
#define ASRC_CHNL0_OUT_LEN 0x00FFFFFFU
|
||||
#define ASRC_CHNL0_OUT_LEN_M (ASRC_CHNL0_OUT_LEN_V << ASRC_CHNL0_OUT_LEN_S)
|
||||
#define ASRC_CHNL0_OUT_LEN_V 0x00FFFFFFU
|
||||
#define ASRC_CHNL0_OUT_LEN_S 8
|
||||
|
||||
/** ASRC_CHNL0_FIFO_CTRL_REG register
|
||||
* Control and configuration registers
|
||||
*/
|
||||
#define ASRC_CHNL0_FIFO_CTRL_REG (DR_REG_ASRC_BASE + 0x1c)
|
||||
/** ASRC_CHNL0_INFIFO_RESET : WT; bitpos: [0]; default: 0;
|
||||
* Set this bit to reset outfifo.
|
||||
*/
|
||||
#define ASRC_CHNL0_INFIFO_RESET (BIT(0))
|
||||
#define ASRC_CHNL0_INFIFO_RESET_M (ASRC_CHNL0_INFIFO_RESET_V << ASRC_CHNL0_INFIFO_RESET_S)
|
||||
#define ASRC_CHNL0_INFIFO_RESET_V 0x00000001U
|
||||
#define ASRC_CHNL0_INFIFO_RESET_S 0
|
||||
/** ASRC_CHNL0_OUTFIFO_RESET : WT; bitpos: [1]; default: 0;
|
||||
* Set this bit to reset infifo.
|
||||
*/
|
||||
#define ASRC_CHNL0_OUTFIFO_RESET (BIT(1))
|
||||
#define ASRC_CHNL0_OUTFIFO_RESET_M (ASRC_CHNL0_OUTFIFO_RESET_V << ASRC_CHNL0_OUTFIFO_RESET_S)
|
||||
#define ASRC_CHNL0_OUTFIFO_RESET_V 0x00000001U
|
||||
#define ASRC_CHNL0_OUTFIFO_RESET_S 1
|
||||
|
||||
/** ASRC_CHNL0_INT_RAW_REG register
|
||||
* Raw interrupt status
|
||||
*/
|
||||
#define ASRC_CHNL0_INT_RAW_REG (DR_REG_ASRC_BASE + 0x20)
|
||||
/** ASRC_CHNL0_OUTCNT_EOF_INT_RAW : R/WTC/SS; bitpos: [0]; default: 0;
|
||||
* This interrupt raw bit turns to high level when the counter approach to reg_out_len.
|
||||
*/
|
||||
#define ASRC_CHNL0_OUTCNT_EOF_INT_RAW (BIT(0))
|
||||
#define ASRC_CHNL0_OUTCNT_EOF_INT_RAW_M (ASRC_CHNL0_OUTCNT_EOF_INT_RAW_V << ASRC_CHNL0_OUTCNT_EOF_INT_RAW_S)
|
||||
#define ASRC_CHNL0_OUTCNT_EOF_INT_RAW_V 0x00000001U
|
||||
#define ASRC_CHNL0_OUTCNT_EOF_INT_RAW_S 0
|
||||
|
||||
/** ASRC_CHNL0_INT_ST_REG register
|
||||
* Masked interrupt status
|
||||
*/
|
||||
#define ASRC_CHNL0_INT_ST_REG (DR_REG_ASRC_BASE + 0x24)
|
||||
/** ASRC_CHNL0_OUTCNT_EOF_INT_ST : RO; bitpos: [0]; default: 0;
|
||||
* This is the status bit for reg_out_cnt_eof_int_raw when reg_out_cnt_eof_int_ena is
|
||||
* set to 1.
|
||||
*/
|
||||
#define ASRC_CHNL0_OUTCNT_EOF_INT_ST (BIT(0))
|
||||
#define ASRC_CHNL0_OUTCNT_EOF_INT_ST_M (ASRC_CHNL0_OUTCNT_EOF_INT_ST_V << ASRC_CHNL0_OUTCNT_EOF_INT_ST_S)
|
||||
#define ASRC_CHNL0_OUTCNT_EOF_INT_ST_V 0x00000001U
|
||||
#define ASRC_CHNL0_OUTCNT_EOF_INT_ST_S 0
|
||||
|
||||
/** ASRC_CHNL0_INT_ENA_REG register
|
||||
* Interrupt enable bits
|
||||
*/
|
||||
#define ASRC_CHNL0_INT_ENA_REG (DR_REG_ASRC_BASE + 0x28)
|
||||
/** ASRC_CHNL0_OUTCNT_EOF_INT_ENA : R/W; bitpos: [0]; default: 0;
|
||||
* This is the enable bit for reg_out_cnt_eof_int_st register.
|
||||
*/
|
||||
#define ASRC_CHNL0_OUTCNT_EOF_INT_ENA (BIT(0))
|
||||
#define ASRC_CHNL0_OUTCNT_EOF_INT_ENA_M (ASRC_CHNL0_OUTCNT_EOF_INT_ENA_V << ASRC_CHNL0_OUTCNT_EOF_INT_ENA_S)
|
||||
#define ASRC_CHNL0_OUTCNT_EOF_INT_ENA_V 0x00000001U
|
||||
#define ASRC_CHNL0_OUTCNT_EOF_INT_ENA_S 0
|
||||
|
||||
/** ASRC_CHNL0_INT_CLR_REG register
|
||||
* Interrupt clear bits
|
||||
*/
|
||||
#define ASRC_CHNL0_INT_CLR_REG (DR_REG_ASRC_BASE + 0x2c)
|
||||
/** ASRC_CHNL0_OUTCNT_EOF_INT_CLR : WT; bitpos: [0]; default: 0;
|
||||
* Set this bit to clear the reg_out_cnt_eof_int_raw interrupt.
|
||||
*/
|
||||
#define ASRC_CHNL0_OUTCNT_EOF_INT_CLR (BIT(0))
|
||||
#define ASRC_CHNL0_OUTCNT_EOF_INT_CLR_M (ASRC_CHNL0_OUTCNT_EOF_INT_CLR_V << ASRC_CHNL0_OUTCNT_EOF_INT_CLR_S)
|
||||
#define ASRC_CHNL0_OUTCNT_EOF_INT_CLR_V 0x00000001U
|
||||
#define ASRC_CHNL0_OUTCNT_EOF_INT_CLR_S 0
|
||||
|
||||
/** ASRC_CHNL0_OUT_CNT_REG register
|
||||
* Status Registers
|
||||
*/
|
||||
#define ASRC_CHNL0_OUT_CNT_REG (DR_REG_ASRC_BASE + 0x30)
|
||||
/** ASRC_CHNL0_OUT_CNT : RO; bitpos: [23:0]; default: 0;
|
||||
* Represents the bytes numbers send to the DMA when EOF occurs.
|
||||
*/
|
||||
#define ASRC_CHNL0_OUT_CNT 0x00FFFFFFU
|
||||
#define ASRC_CHNL0_OUT_CNT_M (ASRC_CHNL0_OUT_CNT_V << ASRC_CHNL0_OUT_CNT_S)
|
||||
#define ASRC_CHNL0_OUT_CNT_V 0x00FFFFFFU
|
||||
#define ASRC_CHNL0_OUT_CNT_S 0
|
||||
|
||||
/** ASRC_CHNL0_TRACE1_REG register
|
||||
* Debug Register1
|
||||
*/
|
||||
#define ASRC_CHNL0_TRACE1_REG (DR_REG_ASRC_BASE + 0x38)
|
||||
/** ASRC_CHNL0_OUT_INC : RO; bitpos: [23:0]; default: 0;
|
||||
* Represents the samples numbers send to the DMA
|
||||
*/
|
||||
#define ASRC_CHNL0_OUT_INC 0x00FFFFFFU
|
||||
#define ASRC_CHNL0_OUT_INC_M (ASRC_CHNL0_OUT_INC_V << ASRC_CHNL0_OUT_INC_S)
|
||||
#define ASRC_CHNL0_OUT_INC_V 0x00FFFFFFU
|
||||
#define ASRC_CHNL0_OUT_INC_S 0
|
||||
|
||||
/** ASRC_CHNL1_CFG0_REG register
|
||||
* Control and configuration registers
|
||||
*/
|
||||
#define ASRC_CHNL1_CFG0_REG (DR_REG_ASRC_BASE + 0x3c)
|
||||
/** ASRC_CHNL1_RS2_STG1_BYPASS : R/W; bitpos: [0]; default: 1;
|
||||
* Set this bit to bypass stage 1 re-sampler in channel1.
|
||||
*/
|
||||
#define ASRC_CHNL1_RS2_STG1_BYPASS (BIT(0))
|
||||
#define ASRC_CHNL1_RS2_STG1_BYPASS_M (ASRC_CHNL1_RS2_STG1_BYPASS_V << ASRC_CHNL1_RS2_STG1_BYPASS_S)
|
||||
#define ASRC_CHNL1_RS2_STG1_BYPASS_V 0x00000001U
|
||||
#define ASRC_CHNL1_RS2_STG1_BYPASS_S 0
|
||||
/** ASRC_CHNL1_RS2_STG0_BYPASS : R/W; bitpos: [1]; default: 1;
|
||||
* Set this bit to bypass stage 0 re-sampler in channel1.
|
||||
*/
|
||||
#define ASRC_CHNL1_RS2_STG0_BYPASS (BIT(1))
|
||||
#define ASRC_CHNL1_RS2_STG0_BYPASS_M (ASRC_CHNL1_RS2_STG0_BYPASS_V << ASRC_CHNL1_RS2_STG0_BYPASS_S)
|
||||
#define ASRC_CHNL1_RS2_STG0_BYPASS_V 0x00000001U
|
||||
#define ASRC_CHNL1_RS2_STG0_BYPASS_S 1
|
||||
/** ASRC_CHNL1_FRAC_BYPASS : R/W; bitpos: [2]; default: 1;
|
||||
* Set this bit to bypass fractional re-sampler in channel1.
|
||||
*/
|
||||
#define ASRC_CHNL1_FRAC_BYPASS (BIT(2))
|
||||
#define ASRC_CHNL1_FRAC_BYPASS_M (ASRC_CHNL1_FRAC_BYPASS_V << ASRC_CHNL1_FRAC_BYPASS_S)
|
||||
#define ASRC_CHNL1_FRAC_BYPASS_V 0x00000001U
|
||||
#define ASRC_CHNL1_FRAC_BYPASS_S 2
|
||||
/** ASRC_CHNL1_RS2_STG1_MODE : R/W; bitpos: [3]; default: 0;
|
||||
* Write this bit to configure stage 1 re-sampler mode in channel1, 0: interpolation
|
||||
* by factor of 2, 1: decimation by factor of 2.
|
||||
*/
|
||||
#define ASRC_CHNL1_RS2_STG1_MODE (BIT(3))
|
||||
#define ASRC_CHNL1_RS2_STG1_MODE_M (ASRC_CHNL1_RS2_STG1_MODE_V << ASRC_CHNL1_RS2_STG1_MODE_S)
|
||||
#define ASRC_CHNL1_RS2_STG1_MODE_V 0x00000001U
|
||||
#define ASRC_CHNL1_RS2_STG1_MODE_S 3
|
||||
/** ASRC_CHNL1_RS2_STG0_MODE : R/W; bitpos: [4]; default: 0;
|
||||
* Write this bit to configure stage 0 re-sampler mode in channel1, 0: interpolation
|
||||
* by factor of 2, 1: decimation by factor of 2.
|
||||
*/
|
||||
#define ASRC_CHNL1_RS2_STG0_MODE (BIT(4))
|
||||
#define ASRC_CHNL1_RS2_STG0_MODE_M (ASRC_CHNL1_RS2_STG0_MODE_V << ASRC_CHNL1_RS2_STG0_MODE_S)
|
||||
#define ASRC_CHNL1_RS2_STG0_MODE_V 0x00000001U
|
||||
#define ASRC_CHNL1_RS2_STG0_MODE_S 4
|
||||
/** ASRC_CHNL1_FRAC_AHEAD : R/W; bitpos: [5]; default: 0;
|
||||
* Set this bit to move fraction re-sampler to the first stage in channel1, it should
|
||||
* be 1 when input frequency is higher the output.
|
||||
*/
|
||||
#define ASRC_CHNL1_FRAC_AHEAD (BIT(5))
|
||||
#define ASRC_CHNL1_FRAC_AHEAD_M (ASRC_CHNL1_FRAC_AHEAD_V << ASRC_CHNL1_FRAC_AHEAD_S)
|
||||
#define ASRC_CHNL1_FRAC_AHEAD_V 0x00000001U
|
||||
#define ASRC_CHNL1_FRAC_AHEAD_S 5
|
||||
/** ASRC_CHNL1_MODE : R/W; bitpos: [8:7]; default: 0;
|
||||
* Write the bit to configure the channel mode,0: in and out are both mono, 1: in and
|
||||
* out is both dual, 2: in is mono, out is dual, 3, in is dual, out is mono.
|
||||
*/
|
||||
#define ASRC_CHNL1_MODE 0x00000003U
|
||||
#define ASRC_CHNL1_MODE_M (ASRC_CHNL1_MODE_V << ASRC_CHNL1_MODE_S)
|
||||
#define ASRC_CHNL1_MODE_V 0x00000003U
|
||||
#define ASRC_CHNL1_MODE_S 7
|
||||
/** ASRC_CHNL1_SEL : R/W; bitpos: [9]; default: 0;
|
||||
* Write the bit to configure which 16bits data will be processing.
|
||||
*/
|
||||
#define ASRC_CHNL1_SEL (BIT(9))
|
||||
#define ASRC_CHNL1_SEL_M (ASRC_CHNL1_SEL_V << ASRC_CHNL1_SEL_S)
|
||||
#define ASRC_CHNL1_SEL_V 0x00000001U
|
||||
#define ASRC_CHNL1_SEL_S 9
|
||||
|
||||
/** ASRC_CHNL1_CFG1_REG register
|
||||
* Control and configuration registers
|
||||
*/
|
||||
#define ASRC_CHNL1_CFG1_REG (DR_REG_ASRC_BASE + 0x40)
|
||||
/** ASRC_CHNL1_FRAC_M : R/W; bitpos: [9:0]; default: 0;
|
||||
* Write the bits to specify the denominator of factor of fraction re-sampler in
|
||||
* channel1, reg_chnl0_frac_m and reg_chnl0_frac_l are relatively prime.
|
||||
*/
|
||||
#define ASRC_CHNL1_FRAC_M 0x000003FFU
|
||||
#define ASRC_CHNL1_FRAC_M_M (ASRC_CHNL1_FRAC_M_V << ASRC_CHNL1_FRAC_M_S)
|
||||
#define ASRC_CHNL1_FRAC_M_V 0x000003FFU
|
||||
#define ASRC_CHNL1_FRAC_M_S 0
|
||||
/** ASRC_CHNL1_FRAC_L : R/W; bitpos: [19:10]; default: 0;
|
||||
* Write the bits to specify the nominator of factor of fraction re-sampler in
|
||||
* channel1, reg_chnl0_frac_l and reg_chnl0_frac_m are relatively prime.
|
||||
*/
|
||||
#define ASRC_CHNL1_FRAC_L 0x000003FFU
|
||||
#define ASRC_CHNL1_FRAC_L_M (ASRC_CHNL1_FRAC_L_V << ASRC_CHNL1_FRAC_L_S)
|
||||
#define ASRC_CHNL1_FRAC_L_V 0x000003FFU
|
||||
#define ASRC_CHNL1_FRAC_L_S 10
|
||||
|
||||
/** ASRC_CHNL1_CFG2_REG register
|
||||
* Control and configuration registers
|
||||
*/
|
||||
#define ASRC_CHNL1_CFG2_REG (DR_REG_ASRC_BASE + 0x44)
|
||||
/** ASRC_CHNL1_FRAC_RECIPL : R/W; bitpos: [19:0]; default: 0;
|
||||
* Write the bits with ((2^19+L)/(2L)) round down in channel1.
|
||||
*/
|
||||
#define ASRC_CHNL1_FRAC_RECIPL 0x000FFFFFU
|
||||
#define ASRC_CHNL1_FRAC_RECIPL_M (ASRC_CHNL1_FRAC_RECIPL_V << ASRC_CHNL1_FRAC_RECIPL_S)
|
||||
#define ASRC_CHNL1_FRAC_RECIPL_V 0x000FFFFFU
|
||||
#define ASRC_CHNL1_FRAC_RECIPL_S 0
|
||||
|
||||
/** ASRC_CHNL1_CFG3_REG register
|
||||
* Control and configuration registers
|
||||
*/
|
||||
#define ASRC_CHNL1_CFG3_REG (DR_REG_ASRC_BASE + 0x48)
|
||||
/** ASRC_CHNL1_RESET : WT; bitpos: [0]; default: 0;
|
||||
* Set this bit to reset channel1.
|
||||
*/
|
||||
#define ASRC_CHNL1_RESET (BIT(0))
|
||||
#define ASRC_CHNL1_RESET_M (ASRC_CHNL1_RESET_V << ASRC_CHNL1_RESET_S)
|
||||
#define ASRC_CHNL1_RESET_V 0x00000001U
|
||||
#define ASRC_CHNL1_RESET_S 0
|
||||
|
||||
/** ASRC_CHNL1_CFG4_REG register
|
||||
* Control and configuration registers
|
||||
*/
|
||||
#define ASRC_CHNL1_CFG4_REG (DR_REG_ASRC_BASE + 0x4c)
|
||||
/** ASRC_CHNL1_START : R/W; bitpos: [0]; default: 0;
|
||||
* Set this bit to start channel1.
|
||||
*/
|
||||
#define ASRC_CHNL1_START (BIT(0))
|
||||
#define ASRC_CHNL1_START_M (ASRC_CHNL1_START_V << ASRC_CHNL1_START_S)
|
||||
#define ASRC_CHNL1_START_V 0x00000001U
|
||||
#define ASRC_CHNL1_START_S 0
|
||||
|
||||
/** ASRC_CHNL1_CFG5_REG register
|
||||
* Control and configuration registers
|
||||
*/
|
||||
#define ASRC_CHNL1_CFG5_REG (DR_REG_ASRC_BASE + 0x50)
|
||||
/** ASRC_CHNL1_IN_CNT_ENA : R/W; bitpos: [0]; default: 0;
|
||||
* Set this bit to enable in data byte counter.
|
||||
*/
|
||||
#define ASRC_CHNL1_IN_CNT_ENA (BIT(0))
|
||||
#define ASRC_CHNL1_IN_CNT_ENA_M (ASRC_CHNL1_IN_CNT_ENA_V << ASRC_CHNL1_IN_CNT_ENA_S)
|
||||
#define ASRC_CHNL1_IN_CNT_ENA_V 0x00000001U
|
||||
#define ASRC_CHNL1_IN_CNT_ENA_S 0
|
||||
/** ASRC_CHNL1_IN_CNT_CLR : WT; bitpos: [1]; default: 0;
|
||||
* Set this bit to clear in data byte counter.
|
||||
*/
|
||||
#define ASRC_CHNL1_IN_CNT_CLR (BIT(1))
|
||||
#define ASRC_CHNL1_IN_CNT_CLR_M (ASRC_CHNL1_IN_CNT_CLR_V << ASRC_CHNL1_IN_CNT_CLR_S)
|
||||
#define ASRC_CHNL1_IN_CNT_CLR_V 0x00000001U
|
||||
#define ASRC_CHNL1_IN_CNT_CLR_S 1
|
||||
/** ASRC_CHNL1_IN_LEN : R/W; bitpos: [31:8]; default: 0;
|
||||
* Write the bits to specify the data byte numbers of data from the DMA
|
||||
*/
|
||||
#define ASRC_CHNL1_IN_LEN 0x00FFFFFFU
|
||||
#define ASRC_CHNL1_IN_LEN_M (ASRC_CHNL1_IN_LEN_V << ASRC_CHNL1_IN_LEN_S)
|
||||
#define ASRC_CHNL1_IN_LEN_V 0x00FFFFFFU
|
||||
#define ASRC_CHNL1_IN_LEN_S 8
|
||||
|
||||
/** ASRC_CHNL1_CFG6_REG register
|
||||
* Control and configuration registers
|
||||
*/
|
||||
#define ASRC_CHNL1_CFG6_REG (DR_REG_ASRC_BASE + 0x54)
|
||||
/** ASRC_CHNL1_OUT_EOF_GEN_MODE : R/W; bitpos: [1:0]; default: 0;
|
||||
* Write the bits to specify the which eof will be written to DMA. 0: counter eof, 1:
|
||||
* DMA ineof, 2: both counter eof and DMA ineof, 3 none.
|
||||
*/
|
||||
#define ASRC_CHNL1_OUT_EOF_GEN_MODE 0x00000003U
|
||||
#define ASRC_CHNL1_OUT_EOF_GEN_MODE_M (ASRC_CHNL1_OUT_EOF_GEN_MODE_V << ASRC_CHNL1_OUT_EOF_GEN_MODE_S)
|
||||
#define ASRC_CHNL1_OUT_EOF_GEN_MODE_V 0x00000003U
|
||||
#define ASRC_CHNL1_OUT_EOF_GEN_MODE_S 0
|
||||
/** ASRC_CHNL1_OUT_CNT_ENA : R/W; bitpos: [2]; default: 0;
|
||||
* Set this bit to enable out data byte counter.
|
||||
*/
|
||||
#define ASRC_CHNL1_OUT_CNT_ENA (BIT(2))
|
||||
#define ASRC_CHNL1_OUT_CNT_ENA_M (ASRC_CHNL1_OUT_CNT_ENA_V << ASRC_CHNL1_OUT_CNT_ENA_S)
|
||||
#define ASRC_CHNL1_OUT_CNT_ENA_V 0x00000001U
|
||||
#define ASRC_CHNL1_OUT_CNT_ENA_S 2
|
||||
/** ASRC_CHNL1_OUT_CNT_CLR : WT; bitpos: [3]; default: 0;
|
||||
* Set this bit to clear out data byte counter.
|
||||
*/
|
||||
#define ASRC_CHNL1_OUT_CNT_CLR (BIT(3))
|
||||
#define ASRC_CHNL1_OUT_CNT_CLR_M (ASRC_CHNL1_OUT_CNT_CLR_V << ASRC_CHNL1_OUT_CNT_CLR_S)
|
||||
#define ASRC_CHNL1_OUT_CNT_CLR_V 0x00000001U
|
||||
#define ASRC_CHNL1_OUT_CNT_CLR_S 3
|
||||
/** ASRC_CHNL1_OUT_SAMPLES_COMP : R/W; bitpos: [4]; default: 0;
|
||||
* Set this bit to enable out data byte counter compensation when using fractional
|
||||
* re-sampler and decimation by factor of 2 which results in reg_chnl1_out_cnt >=
|
||||
* reg_chnl1_out_len
|
||||
*/
|
||||
#define ASRC_CHNL1_OUT_SAMPLES_COMP (BIT(4))
|
||||
#define ASRC_CHNL1_OUT_SAMPLES_COMP_M (ASRC_CHNL1_OUT_SAMPLES_COMP_V << ASRC_CHNL1_OUT_SAMPLES_COMP_S)
|
||||
#define ASRC_CHNL1_OUT_SAMPLES_COMP_V 0x00000001U
|
||||
#define ASRC_CHNL1_OUT_SAMPLES_COMP_S 4
|
||||
/** ASRC_CHNL1_OUT_LEN : R/W; bitpos: [31:8]; default: 0;
|
||||
* Write the bits to specify the data byte number of data to the DMA, the counter eof
|
||||
* will be set when the counter approaches.
|
||||
*/
|
||||
#define ASRC_CHNL1_OUT_LEN 0x00FFFFFFU
|
||||
#define ASRC_CHNL1_OUT_LEN_M (ASRC_CHNL1_OUT_LEN_V << ASRC_CHNL1_OUT_LEN_S)
|
||||
#define ASRC_CHNL1_OUT_LEN_V 0x00FFFFFFU
|
||||
#define ASRC_CHNL1_OUT_LEN_S 8
|
||||
|
||||
/** ASRC_CHNL1_FIFO_CTRL_REG register
|
||||
* Control and configuration registers
|
||||
*/
|
||||
#define ASRC_CHNL1_FIFO_CTRL_REG (DR_REG_ASRC_BASE + 0x58)
|
||||
/** ASRC_CHNL1_INFIFO_RESET : WT; bitpos: [0]; default: 0;
|
||||
* Set this bit to reset outfifo.
|
||||
*/
|
||||
#define ASRC_CHNL1_INFIFO_RESET (BIT(0))
|
||||
#define ASRC_CHNL1_INFIFO_RESET_M (ASRC_CHNL1_INFIFO_RESET_V << ASRC_CHNL1_INFIFO_RESET_S)
|
||||
#define ASRC_CHNL1_INFIFO_RESET_V 0x00000001U
|
||||
#define ASRC_CHNL1_INFIFO_RESET_S 0
|
||||
/** ASRC_CHNL1_OUTFIFO_RESET : WT; bitpos: [1]; default: 0;
|
||||
* Set this bit to reset infifo.
|
||||
*/
|
||||
#define ASRC_CHNL1_OUTFIFO_RESET (BIT(1))
|
||||
#define ASRC_CHNL1_OUTFIFO_RESET_M (ASRC_CHNL1_OUTFIFO_RESET_V << ASRC_CHNL1_OUTFIFO_RESET_S)
|
||||
#define ASRC_CHNL1_OUTFIFO_RESET_V 0x00000001U
|
||||
#define ASRC_CHNL1_OUTFIFO_RESET_S 1
|
||||
|
||||
/** ASRC_CHNL1_INT_RAW_REG register
|
||||
* Raw interrupt status
|
||||
*/
|
||||
#define ASRC_CHNL1_INT_RAW_REG (DR_REG_ASRC_BASE + 0x5c)
|
||||
/** ASRC_CHNL1_OUTCNT_EOF_INT_RAW : R/WTC/SS; bitpos: [0]; default: 0;
|
||||
* This interrupt raw bit turns to high level when the counter approach to reg_out_len.
|
||||
*/
|
||||
#define ASRC_CHNL1_OUTCNT_EOF_INT_RAW (BIT(0))
|
||||
#define ASRC_CHNL1_OUTCNT_EOF_INT_RAW_M (ASRC_CHNL1_OUTCNT_EOF_INT_RAW_V << ASRC_CHNL1_OUTCNT_EOF_INT_RAW_S)
|
||||
#define ASRC_CHNL1_OUTCNT_EOF_INT_RAW_V 0x00000001U
|
||||
#define ASRC_CHNL1_OUTCNT_EOF_INT_RAW_S 0
|
||||
|
||||
/** ASRC_CHNL1_INT_ST_REG register
|
||||
* Masked interrupt status
|
||||
*/
|
||||
#define ASRC_CHNL1_INT_ST_REG (DR_REG_ASRC_BASE + 0x60)
|
||||
/** ASRC_CHNL1_OUTCNT_EOF_INT_ST : RO; bitpos: [0]; default: 0;
|
||||
* This is the status bit for reg_out_cnt_eof_int_raw when reg_out_cnt_eof_int_ena is
|
||||
* set to 1.
|
||||
*/
|
||||
#define ASRC_CHNL1_OUTCNT_EOF_INT_ST (BIT(0))
|
||||
#define ASRC_CHNL1_OUTCNT_EOF_INT_ST_M (ASRC_CHNL1_OUTCNT_EOF_INT_ST_V << ASRC_CHNL1_OUTCNT_EOF_INT_ST_S)
|
||||
#define ASRC_CHNL1_OUTCNT_EOF_INT_ST_V 0x00000001U
|
||||
#define ASRC_CHNL1_OUTCNT_EOF_INT_ST_S 0
|
||||
|
||||
/** ASRC_CHNL1_INT_ENA_REG register
|
||||
* Interrupt enable bits
|
||||
*/
|
||||
#define ASRC_CHNL1_INT_ENA_REG (DR_REG_ASRC_BASE + 0x64)
|
||||
/** ASRC_CHNL1_OUTCNT_EOF_INT_ENA : R/W; bitpos: [0]; default: 0;
|
||||
* This is the enable bit for reg_out_cnt_eof_int_st register.
|
||||
*/
|
||||
#define ASRC_CHNL1_OUTCNT_EOF_INT_ENA (BIT(0))
|
||||
#define ASRC_CHNL1_OUTCNT_EOF_INT_ENA_M (ASRC_CHNL1_OUTCNT_EOF_INT_ENA_V << ASRC_CHNL1_OUTCNT_EOF_INT_ENA_S)
|
||||
#define ASRC_CHNL1_OUTCNT_EOF_INT_ENA_V 0x00000001U
|
||||
#define ASRC_CHNL1_OUTCNT_EOF_INT_ENA_S 0
|
||||
|
||||
/** ASRC_CHNL1_INT_CLR_REG register
|
||||
* Interrupt clear bits
|
||||
*/
|
||||
#define ASRC_CHNL1_INT_CLR_REG (DR_REG_ASRC_BASE + 0x68)
|
||||
/** ASRC_CHNL1_OUTCNT_EOF_INT_CLR : WT; bitpos: [0]; default: 0;
|
||||
* Set this bit to clear the reg_out_cnt_eof_int_raw interrupt.
|
||||
*/
|
||||
#define ASRC_CHNL1_OUTCNT_EOF_INT_CLR (BIT(0))
|
||||
#define ASRC_CHNL1_OUTCNT_EOF_INT_CLR_M (ASRC_CHNL1_OUTCNT_EOF_INT_CLR_V << ASRC_CHNL1_OUTCNT_EOF_INT_CLR_S)
|
||||
#define ASRC_CHNL1_OUTCNT_EOF_INT_CLR_V 0x00000001U
|
||||
#define ASRC_CHNL1_OUTCNT_EOF_INT_CLR_S 0
|
||||
|
||||
/** ASRC_CHNL1_OUT_CNT_REG register
|
||||
* Status Registers
|
||||
*/
|
||||
#define ASRC_CHNL1_OUT_CNT_REG (DR_REG_ASRC_BASE + 0x6c)
|
||||
/** ASRC_CHNL1_OUT_CNT : RO; bitpos: [23:0]; default: 0;
|
||||
* Represents the data byte numbers send to the DMA when EOF occurs.
|
||||
*/
|
||||
#define ASRC_CHNL1_OUT_CNT 0x00FFFFFFU
|
||||
#define ASRC_CHNL1_OUT_CNT_M (ASRC_CHNL1_OUT_CNT_V << ASRC_CHNL1_OUT_CNT_S)
|
||||
#define ASRC_CHNL1_OUT_CNT_V 0x00FFFFFFU
|
||||
#define ASRC_CHNL1_OUT_CNT_S 0
|
||||
|
||||
/** ASRC_CHNL1_TRACE1_REG register
|
||||
* Debug Register1
|
||||
*/
|
||||
#define ASRC_CHNL1_TRACE1_REG (DR_REG_ASRC_BASE + 0x74)
|
||||
/** ASRC_CHNL1_OUT_INC : RO; bitpos: [23:0]; default: 0;
|
||||
* Represents the data byte numbers send to the DMA
|
||||
*/
|
||||
#define ASRC_CHNL1_OUT_INC 0x00FFFFFFU
|
||||
#define ASRC_CHNL1_OUT_INC_M (ASRC_CHNL1_OUT_INC_V << ASRC_CHNL1_OUT_INC_S)
|
||||
#define ASRC_CHNL1_OUT_INC_V 0x00FFFFFFU
|
||||
#define ASRC_CHNL1_OUT_INC_S 0
|
||||
|
||||
/** ASRC_SYS_REG register
|
||||
* Control and configuration
|
||||
*/
|
||||
#define ASRC_SYS_REG (DR_REG_ASRC_BASE + 0xf8)
|
||||
/** ASRC_CLK_EN : R/W; bitpos: [0]; default: 0;
|
||||
* Reserved
|
||||
*/
|
||||
#define ASRC_CLK_EN (BIT(0))
|
||||
#define ASRC_CLK_EN_M (ASRC_CLK_EN_V << ASRC_CLK_EN_S)
|
||||
#define ASRC_CLK_EN_V 0x00000001U
|
||||
#define ASRC_CLK_EN_S 0
|
||||
/** ASRC_CHNL0_CLK_FO : R/W; bitpos: [1]; default: 0;
|
||||
* Set this bit to make channel0 clock free run.
|
||||
*/
|
||||
#define ASRC_CHNL0_CLK_FO (BIT(1))
|
||||
#define ASRC_CHNL0_CLK_FO_M (ASRC_CHNL0_CLK_FO_V << ASRC_CHNL0_CLK_FO_S)
|
||||
#define ASRC_CHNL0_CLK_FO_V 0x00000001U
|
||||
#define ASRC_CHNL0_CLK_FO_S 1
|
||||
/** ASRC_CHNL1_CLK_FO : R/W; bitpos: [2]; default: 0;
|
||||
* Set this bit to make channel1 clock free run.
|
||||
*/
|
||||
#define ASRC_CHNL1_CLK_FO (BIT(2))
|
||||
#define ASRC_CHNL1_CLK_FO_M (ASRC_CHNL1_CLK_FO_V << ASRC_CHNL1_CLK_FO_S)
|
||||
#define ASRC_CHNL1_CLK_FO_V 0x00000001U
|
||||
#define ASRC_CHNL1_CLK_FO_S 2
|
||||
/** ASRC_CHNL0_OUTFIFO_CLK_FO : R/W; bitpos: [3]; default: 0;
|
||||
* Set this bit to make channel0 outfifo clock free run.
|
||||
*/
|
||||
#define ASRC_CHNL0_OUTFIFO_CLK_FO (BIT(3))
|
||||
#define ASRC_CHNL0_OUTFIFO_CLK_FO_M (ASRC_CHNL0_OUTFIFO_CLK_FO_V << ASRC_CHNL0_OUTFIFO_CLK_FO_S)
|
||||
#define ASRC_CHNL0_OUTFIFO_CLK_FO_V 0x00000001U
|
||||
#define ASRC_CHNL0_OUTFIFO_CLK_FO_S 3
|
||||
/** ASRC_CHNL0_INFIFO_CLK_FO : R/W; bitpos: [4]; default: 0;
|
||||
* Set this bit to make channel0 infifo clock free run.
|
||||
*/
|
||||
#define ASRC_CHNL0_INFIFO_CLK_FO (BIT(4))
|
||||
#define ASRC_CHNL0_INFIFO_CLK_FO_M (ASRC_CHNL0_INFIFO_CLK_FO_V << ASRC_CHNL0_INFIFO_CLK_FO_S)
|
||||
#define ASRC_CHNL0_INFIFO_CLK_FO_V 0x00000001U
|
||||
#define ASRC_CHNL0_INFIFO_CLK_FO_S 4
|
||||
/** ASRC_CHNL1_OUTFIFO_CLK_FO : R/W; bitpos: [5]; default: 0;
|
||||
* Set this bit to make channel1 outfifo clock free run.
|
||||
*/
|
||||
#define ASRC_CHNL1_OUTFIFO_CLK_FO (BIT(5))
|
||||
#define ASRC_CHNL1_OUTFIFO_CLK_FO_M (ASRC_CHNL1_OUTFIFO_CLK_FO_V << ASRC_CHNL1_OUTFIFO_CLK_FO_S)
|
||||
#define ASRC_CHNL1_OUTFIFO_CLK_FO_V 0x00000001U
|
||||
#define ASRC_CHNL1_OUTFIFO_CLK_FO_S 5
|
||||
/** ASRC_CHNL1_INFIFO_CLK_FO : R/W; bitpos: [6]; default: 0;
|
||||
* Set this bit to make channel1 infifo clock free run.
|
||||
*/
|
||||
#define ASRC_CHNL1_INFIFO_CLK_FO (BIT(6))
|
||||
#define ASRC_CHNL1_INFIFO_CLK_FO_M (ASRC_CHNL1_INFIFO_CLK_FO_V << ASRC_CHNL1_INFIFO_CLK_FO_S)
|
||||
#define ASRC_CHNL1_INFIFO_CLK_FO_V 0x00000001U
|
||||
#define ASRC_CHNL1_INFIFO_CLK_FO_S 6
|
||||
|
||||
/** ASRC_DATE_REG register
|
||||
* Control and configuration registers
|
||||
*/
|
||||
#define ASRC_DATE_REG (DR_REG_ASRC_BASE + 0xfc)
|
||||
/** ASRC_DATE : R/W; bitpos: [27:0]; default: 37777984;
|
||||
* Reserved
|
||||
*/
|
||||
#define ASRC_DATE 0x0FFFFFFFU
|
||||
#define ASRC_DATE_M (ASRC_DATE_V << ASRC_DATE_S)
|
||||
#define ASRC_DATE_V 0x0FFFFFFFU
|
||||
#define ASRC_DATE_S 0
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
656
components/soc/esp32s31/register/soc/asrc_struct.h
Normal file
656
components/soc/esp32s31/register/soc/asrc_struct.h
Normal file
@@ -0,0 +1,656 @@
|
||||
/**
|
||||
* SPDX-FileCopyrightText: 2025 Espressif Systems (Shanghai) CO LTD
|
||||
*
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
*/
|
||||
#pragma once
|
||||
|
||||
#include <stdint.h>
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
/** Group: Control and configuration registers */
|
||||
/** Type of chnl0_cfg0 register
|
||||
* Control and configuration registers
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** chnl0_rs2_stg1_bypass : R/W; bitpos: [0]; default: 1;
|
||||
* Set this bit to bypass stage 1 re-sampler in channel0.
|
||||
*/
|
||||
uint32_t chnl0_rs2_stg1_bypass:1;
|
||||
/** chnl0_rs2_stg0_bypass : R/W; bitpos: [1]; default: 1;
|
||||
* Set this bit to bypass stage 0 re-sampler in channel0.
|
||||
*/
|
||||
uint32_t chnl0_rs2_stg0_bypass:1;
|
||||
/** chnl0_frac_bypass : R/W; bitpos: [2]; default: 1;
|
||||
* Set this bit to bypass fractional re-sampler in channel0.
|
||||
*/
|
||||
uint32_t chnl0_frac_bypass:1;
|
||||
/** chnl0_rs2_stg1_mode : R/W; bitpos: [3]; default: 0;
|
||||
* Write this bit to configure stage 1 re-sampler mode in channel0, 0: interpolation
|
||||
* by factor of 2, 1: decimation by factor of 2.
|
||||
*/
|
||||
uint32_t chnl0_rs2_stg1_mode:1;
|
||||
/** chnl0_rs2_stg0_mode : R/W; bitpos: [4]; default: 0;
|
||||
* Write this bit to configure stage 0 re-sampler mode in channel0, 0: interpolation
|
||||
* by factor of 2, 1: decimation by factor of 2.
|
||||
*/
|
||||
uint32_t chnl0_rs2_stg0_mode:1;
|
||||
/** chnl0_frac_ahead : R/W; bitpos: [5]; default: 0;
|
||||
* Set this bit to move fraction re-sampler to the first stage in channel0, it should
|
||||
* be 1 when input frequency is higher the output.
|
||||
*/
|
||||
uint32_t chnl0_frac_ahead:1;
|
||||
uint32_t reserved_6:1;
|
||||
/** chnl0_mode : R/W; bitpos: [8:7]; default: 0;
|
||||
* Write the bit to configure the channel mode,0: in and out are both mono, 1: in and
|
||||
* out is both dual, 2: in is mono, out is dual, 3, in is dual, out is mono.
|
||||
*/
|
||||
uint32_t chnl0_mode:2;
|
||||
/** chnl0_sel : R/W; bitpos: [9]; default: 0;
|
||||
* Write the bit to configure which 16bits data will be processing.
|
||||
*/
|
||||
uint32_t chnl0_sel:1;
|
||||
uint32_t reserved_10:22;
|
||||
};
|
||||
uint32_t val;
|
||||
} asrc_chnl0_cfg0_reg_t;
|
||||
|
||||
/** Type of chnl0_cfg1 register
|
||||
* Control and configuration registers
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** chnl0_frac_m : R/W; bitpos: [9:0]; default: 0;
|
||||
* Write the bits to specify the denominator of factor of fraction re-sampler in
|
||||
* channel0, reg_chnl0_frac_m and reg_chnl0_frac_l are relatively prime.
|
||||
*/
|
||||
uint32_t chnl0_frac_m:10;
|
||||
/** chnl0_frac_l : R/W; bitpos: [19:10]; default: 0;
|
||||
* Write the bits to specify the nominator of factor of fraction re-sampler in
|
||||
* channel0, reg_chnl0_frac_l and reg_chnl0_frac_m are relatively prime.
|
||||
*/
|
||||
uint32_t chnl0_frac_l:10;
|
||||
uint32_t reserved_20:12;
|
||||
};
|
||||
uint32_t val;
|
||||
} asrc_chnl0_cfg1_reg_t;
|
||||
|
||||
/** Type of chnl0_cfg2 register
|
||||
* Control and configuration registers
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** chnl0_frac_recipl : R/W; bitpos: [19:0]; default: 0;
|
||||
* Write the bits with ((2^19+L)/(2L)) round down in channel0.
|
||||
*/
|
||||
uint32_t chnl0_frac_recipl:20;
|
||||
uint32_t reserved_20:12;
|
||||
};
|
||||
uint32_t val;
|
||||
} asrc_chnl0_cfg2_reg_t;
|
||||
|
||||
/** Type of chnl0_cfg3 register
|
||||
* Control and configuration registers
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** chnl0_reset : WT; bitpos: [0]; default: 0;
|
||||
* Set this bit to reset channel0.
|
||||
*/
|
||||
uint32_t chnl0_reset:1;
|
||||
uint32_t reserved_1:31;
|
||||
};
|
||||
uint32_t val;
|
||||
} asrc_chnl0_cfg3_reg_t;
|
||||
|
||||
/** Type of chnl0_cfg4 register
|
||||
* Control and configuration registers
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** chnl0_start : R/W; bitpos: [0]; default: 0;
|
||||
* Set this bit to start channel0.
|
||||
*/
|
||||
uint32_t chnl0_start:1;
|
||||
uint32_t reserved_1:31;
|
||||
};
|
||||
uint32_t val;
|
||||
} asrc_chnl0_cfg4_reg_t;
|
||||
|
||||
/** Type of chnl0_cfg5 register
|
||||
* Control and configuration registers
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** chnl0_in_cnt_ena : R/W; bitpos: [0]; default: 0;
|
||||
* Set this bit to enable in data byte counter.
|
||||
*/
|
||||
uint32_t chnl0_in_cnt_ena:1;
|
||||
/** chnl0_in_cnt_clr : WT; bitpos: [1]; default: 0;
|
||||
* Set this bit to clear in data byte counter.
|
||||
*/
|
||||
uint32_t chnl0_in_cnt_clr:1;
|
||||
uint32_t reserved_2:6;
|
||||
/** chnl0_in_len : R/W; bitpos: [31:8]; default: 0;
|
||||
* Write the bits to specify the data byte number of data from the DMA
|
||||
*/
|
||||
uint32_t chnl0_in_len:24;
|
||||
};
|
||||
uint32_t val;
|
||||
} asrc_chnl0_cfg5_reg_t;
|
||||
|
||||
/** Type of chnl0_cfg6 register
|
||||
* Control and configuration registers
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** chnl0_out_eof_gen_mode : R/W; bitpos: [1:0]; default: 0;
|
||||
* Write the bits to specify the which eof will be written to DMA. 0: counter eof, 1:
|
||||
* DMA ineof, 2: both counter eof and DMA ineof, 3 none.
|
||||
*/
|
||||
uint32_t chnl0_out_eof_gen_mode:2;
|
||||
/** chnl0_out_cnt_ena : R/W; bitpos: [2]; default: 0;
|
||||
* Set this bit to enable out data byte counter.
|
||||
*/
|
||||
uint32_t chnl0_out_cnt_ena:1;
|
||||
/** chnl0_out_cnt_clr : WT; bitpos: [3]; default: 0;
|
||||
* Set this bit to clear out data byte counter.
|
||||
*/
|
||||
uint32_t chnl0_out_cnt_clr:1;
|
||||
/** chnl0_out_len_comp : R/W; bitpos: [4]; default: 0;
|
||||
* Set this bit to enable out data byte counter compensation when using fractional
|
||||
* re-sampler and decimation by factor of 2 which results in reg_chnl0_out_cnt >=
|
||||
* reg_chnl0_out_len
|
||||
*/
|
||||
uint32_t chnl0_out_len_comp:1;
|
||||
uint32_t reserved_5:3;
|
||||
/** chnl0_out_len : R/W; bitpos: [31:8]; default: 0;
|
||||
* Write the bits to specify the data byte number of data to the DMA, the counter eof
|
||||
* will be set when the counter approaches.
|
||||
*/
|
||||
uint32_t chnl0_out_len:24;
|
||||
};
|
||||
uint32_t val;
|
||||
} asrc_chnl0_cfg6_reg_t;
|
||||
|
||||
/** Type of chnl0_fifo_ctrl register
|
||||
* Control and configuration registers
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** chnl0_infifo_reset : WT; bitpos: [0]; default: 0;
|
||||
* Set this bit to reset outfifo.
|
||||
*/
|
||||
uint32_t chnl0_infifo_reset:1;
|
||||
/** chnl0_outfifo_reset : WT; bitpos: [1]; default: 0;
|
||||
* Set this bit to reset infifo.
|
||||
*/
|
||||
uint32_t chnl0_outfifo_reset:1;
|
||||
uint32_t reserved_2:30;
|
||||
};
|
||||
uint32_t val;
|
||||
} asrc_chnl0_fifo_ctrl_reg_t;
|
||||
|
||||
/** Type of chnl1_cfg0 register
|
||||
* Control and configuration registers
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** chnl1_rs2_stg1_bypass : R/W; bitpos: [0]; default: 1;
|
||||
* Set this bit to bypass stage 1 re-sampler in channel1.
|
||||
*/
|
||||
uint32_t chnl1_rs2_stg1_bypass:1;
|
||||
/** chnl1_rs2_stg0_bypass : R/W; bitpos: [1]; default: 1;
|
||||
* Set this bit to bypass stage 0 re-sampler in channel1.
|
||||
*/
|
||||
uint32_t chnl1_rs2_stg0_bypass:1;
|
||||
/** chnl1_frac_bypass : R/W; bitpos: [2]; default: 1;
|
||||
* Set this bit to bypass fractional re-sampler in channel1.
|
||||
*/
|
||||
uint32_t chnl1_frac_bypass:1;
|
||||
/** chnl1_rs2_stg1_mode : R/W; bitpos: [3]; default: 0;
|
||||
* Write this bit to configure stage 1 re-sampler mode in channel1, 0: interpolation
|
||||
* by factor of 2, 1: decimation by factor of 2.
|
||||
*/
|
||||
uint32_t chnl1_rs2_stg1_mode:1;
|
||||
/** chnl1_rs2_stg0_mode : R/W; bitpos: [4]; default: 0;
|
||||
* Write this bit to configure stage 0 re-sampler mode in channel1, 0: interpolation
|
||||
* by factor of 2, 1: decimation by factor of 2.
|
||||
*/
|
||||
uint32_t chnl1_rs2_stg0_mode:1;
|
||||
/** chnl1_frac_ahead : R/W; bitpos: [5]; default: 0;
|
||||
* Set this bit to move fraction re-sampler to the first stage in channel1, it should
|
||||
* be 1 when input frequency is higher the output.
|
||||
*/
|
||||
uint32_t chnl1_frac_ahead:1;
|
||||
uint32_t reserved_6:1;
|
||||
/** chnl1_mode : R/W; bitpos: [8:7]; default: 0;
|
||||
* Write the bit to configure the channel mode,0: in and out are both mono, 1: in and
|
||||
* out is both dual, 2: in is mono, out is dual, 3, in is dual, out is mono.
|
||||
*/
|
||||
uint32_t chnl1_mode:2;
|
||||
/** chnl1_sel : R/W; bitpos: [9]; default: 0;
|
||||
* Write the bit to configure which 16bits data will be processing.
|
||||
*/
|
||||
uint32_t chnl1_sel:1;
|
||||
uint32_t reserved_10:22;
|
||||
};
|
||||
uint32_t val;
|
||||
} asrc_chnl1_cfg0_reg_t;
|
||||
|
||||
/** Type of chnl1_cfg1 register
|
||||
* Control and configuration registers
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** chnl1_frac_m : R/W; bitpos: [9:0]; default: 0;
|
||||
* Write the bits to specify the denominator of factor of fraction re-sampler in
|
||||
* channel1, reg_chnl0_frac_m and reg_chnl0_frac_l are relatively prime.
|
||||
*/
|
||||
uint32_t chnl1_frac_m:10;
|
||||
/** chnl1_frac_l : R/W; bitpos: [19:10]; default: 0;
|
||||
* Write the bits to specify the nominator of factor of fraction re-sampler in
|
||||
* channel1, reg_chnl0_frac_l and reg_chnl0_frac_m are relatively prime.
|
||||
*/
|
||||
uint32_t chnl1_frac_l:10;
|
||||
uint32_t reserved_20:12;
|
||||
};
|
||||
uint32_t val;
|
||||
} asrc_chnl1_cfg1_reg_t;
|
||||
|
||||
/** Type of chnl1_cfg2 register
|
||||
* Control and configuration registers
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** chnl1_frac_recipl : R/W; bitpos: [19:0]; default: 0;
|
||||
* Write the bits with ((2^19+L)/(2L)) round down in channel1.
|
||||
*/
|
||||
uint32_t chnl1_frac_recipl:20;
|
||||
uint32_t reserved_20:12;
|
||||
};
|
||||
uint32_t val;
|
||||
} asrc_chnl1_cfg2_reg_t;
|
||||
|
||||
/** Type of chnl1_cfg3 register
|
||||
* Control and configuration registers
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** chnl1_reset : WT; bitpos: [0]; default: 0;
|
||||
* Set this bit to reset channel1.
|
||||
*/
|
||||
uint32_t chnl1_reset:1;
|
||||
uint32_t reserved_1:31;
|
||||
};
|
||||
uint32_t val;
|
||||
} asrc_chnl1_cfg3_reg_t;
|
||||
|
||||
/** Type of chnl1_cfg4 register
|
||||
* Control and configuration registers
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** chnl1_start : R/W; bitpos: [0]; default: 0;
|
||||
* Set this bit to start channel1.
|
||||
*/
|
||||
uint32_t chnl1_start:1;
|
||||
uint32_t reserved_1:31;
|
||||
};
|
||||
uint32_t val;
|
||||
} asrc_chnl1_cfg4_reg_t;
|
||||
|
||||
/** Type of chnl1_cfg5 register
|
||||
* Control and configuration registers
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** chnl1_in_cnt_ena : R/W; bitpos: [0]; default: 0;
|
||||
* Set this bit to enable in data byte counter.
|
||||
*/
|
||||
uint32_t chnl1_in_cnt_ena:1;
|
||||
/** chnl1_in_cnt_clr : WT; bitpos: [1]; default: 0;
|
||||
* Set this bit to clear in data byte counter.
|
||||
*/
|
||||
uint32_t chnl1_in_cnt_clr:1;
|
||||
uint32_t reserved_2:6;
|
||||
/** chnl1_in_len : R/W; bitpos: [31:8]; default: 0;
|
||||
* Write the bits to specify the data byte numbers of data from the DMA
|
||||
*/
|
||||
uint32_t chnl1_in_len:24;
|
||||
};
|
||||
uint32_t val;
|
||||
} asrc_chnl1_cfg5_reg_t;
|
||||
|
||||
/** Type of chnl1_cfg6 register
|
||||
* Control and configuration registers
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** chnl1_out_eof_gen_mode : R/W; bitpos: [1:0]; default: 0;
|
||||
* Write the bits to specify the which eof will be written to DMA. 0: counter eof, 1:
|
||||
* DMA ineof, 2: both counter eof and DMA ineof, 3 none.
|
||||
*/
|
||||
uint32_t chnl1_out_eof_gen_mode:2;
|
||||
/** chnl1_out_cnt_ena : R/W; bitpos: [2]; default: 0;
|
||||
* Set this bit to enable out data byte counter.
|
||||
*/
|
||||
uint32_t chnl1_out_cnt_ena:1;
|
||||
/** chnl1_out_cnt_clr : WT; bitpos: [3]; default: 0;
|
||||
* Set this bit to clear out data byte counter.
|
||||
*/
|
||||
uint32_t chnl1_out_cnt_clr:1;
|
||||
/** chnl1_out_samples_comp : R/W; bitpos: [4]; default: 0;
|
||||
* Set this bit to enable out data byte counter compensation when using fractional
|
||||
* re-sampler and decimation by factor of 2 which results in reg_chnl1_out_cnt >=
|
||||
* reg_chnl1_out_len
|
||||
*/
|
||||
uint32_t chnl1_out_samples_comp:1;
|
||||
uint32_t reserved_5:3;
|
||||
/** chnl1_out_len : R/W; bitpos: [31:8]; default: 0;
|
||||
* Write the bits to specify the data byte number of data to the DMA, the counter eof
|
||||
* will be set when the counter approaches.
|
||||
*/
|
||||
uint32_t chnl1_out_len:24;
|
||||
};
|
||||
uint32_t val;
|
||||
} asrc_chnl1_cfg6_reg_t;
|
||||
|
||||
/** Type of chnl1_fifo_ctrl register
|
||||
* Control and configuration registers
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** chnl1_infifo_reset : WT; bitpos: [0]; default: 0;
|
||||
* Set this bit to reset outfifo.
|
||||
*/
|
||||
uint32_t chnl1_infifo_reset:1;
|
||||
/** chnl1_outfifo_reset : WT; bitpos: [1]; default: 0;
|
||||
* Set this bit to reset infifo.
|
||||
*/
|
||||
uint32_t chnl1_outfifo_reset:1;
|
||||
uint32_t reserved_2:30;
|
||||
};
|
||||
uint32_t val;
|
||||
} asrc_chnl1_fifo_ctrl_reg_t;
|
||||
|
||||
|
||||
/** Group: Interrupt Register */
|
||||
/** Type of chnl0_int_raw register
|
||||
* Raw interrupt status
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** chnl0_outcnt_eof_int_raw : R/WTC/SS; bitpos: [0]; default: 0;
|
||||
* This interrupt raw bit turns to high level when the counter approach to reg_out_len.
|
||||
*/
|
||||
uint32_t chnl0_outcnt_eof_int_raw:1;
|
||||
uint32_t reserved_1:31;
|
||||
};
|
||||
uint32_t val;
|
||||
} asrc_chnl0_int_raw_reg_t;
|
||||
|
||||
/** Type of chnl0_int_st register
|
||||
* Masked interrupt status
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** chnl0_outcnt_eof_int_st : RO; bitpos: [0]; default: 0;
|
||||
* This is the status bit for reg_out_cnt_eof_int_raw when reg_out_cnt_eof_int_ena is
|
||||
* set to 1.
|
||||
*/
|
||||
uint32_t chnl0_outcnt_eof_int_st:1;
|
||||
uint32_t reserved_1:31;
|
||||
};
|
||||
uint32_t val;
|
||||
} asrc_chnl0_int_st_reg_t;
|
||||
|
||||
/** Type of chnl0_int_ena register
|
||||
* Interrupt enable bits
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** chnl0_outcnt_eof_int_ena : R/W; bitpos: [0]; default: 0;
|
||||
* This is the enable bit for reg_out_cnt_eof_int_st register.
|
||||
*/
|
||||
uint32_t chnl0_outcnt_eof_int_ena:1;
|
||||
uint32_t reserved_1:31;
|
||||
};
|
||||
uint32_t val;
|
||||
} asrc_chnl0_int_ena_reg_t;
|
||||
|
||||
/** Type of chnl0_int_clr register
|
||||
* Interrupt clear bits
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** chnl0_outcnt_eof_int_clr : WT; bitpos: [0]; default: 0;
|
||||
* Set this bit to clear the reg_out_cnt_eof_int_raw interrupt.
|
||||
*/
|
||||
uint32_t chnl0_outcnt_eof_int_clr:1;
|
||||
uint32_t reserved_1:31;
|
||||
};
|
||||
uint32_t val;
|
||||
} asrc_chnl0_int_clr_reg_t;
|
||||
|
||||
/** Type of chnl1_int_raw register
|
||||
* Raw interrupt status
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** chnl1_outcnt_eof_int_raw : R/WTC/SS; bitpos: [0]; default: 0;
|
||||
* This interrupt raw bit turns to high level when the counter approach to reg_out_len.
|
||||
*/
|
||||
uint32_t chnl1_outcnt_eof_int_raw:1;
|
||||
uint32_t reserved_1:31;
|
||||
};
|
||||
uint32_t val;
|
||||
} asrc_chnl1_int_raw_reg_t;
|
||||
|
||||
/** Type of chnl1_int_st register
|
||||
* Masked interrupt status
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** chnl1_outcnt_eof_int_st : RO; bitpos: [0]; default: 0;
|
||||
* This is the status bit for reg_out_cnt_eof_int_raw when reg_out_cnt_eof_int_ena is
|
||||
* set to 1.
|
||||
*/
|
||||
uint32_t chnl1_outcnt_eof_int_st:1;
|
||||
uint32_t reserved_1:31;
|
||||
};
|
||||
uint32_t val;
|
||||
} asrc_chnl1_int_st_reg_t;
|
||||
|
||||
/** Type of chnl1_int_ena register
|
||||
* Interrupt enable bits
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** chnl1_outcnt_eof_int_ena : R/W; bitpos: [0]; default: 0;
|
||||
* This is the enable bit for reg_out_cnt_eof_int_st register.
|
||||
*/
|
||||
uint32_t chnl1_outcnt_eof_int_ena:1;
|
||||
uint32_t reserved_1:31;
|
||||
};
|
||||
uint32_t val;
|
||||
} asrc_chnl1_int_ena_reg_t;
|
||||
|
||||
/** Type of chnl1_int_clr register
|
||||
* Interrupt clear bits
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** chnl1_outcnt_eof_int_clr : WT; bitpos: [0]; default: 0;
|
||||
* Set this bit to clear the reg_out_cnt_eof_int_raw interrupt.
|
||||
*/
|
||||
uint32_t chnl1_outcnt_eof_int_clr:1;
|
||||
uint32_t reserved_1:31;
|
||||
};
|
||||
uint32_t val;
|
||||
} asrc_chnl1_int_clr_reg_t;
|
||||
|
||||
|
||||
/** Group: Status registers */
|
||||
/** Type of chnl0_out_cnt register
|
||||
* Status Registers
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** chnl0_out_cnt : RO; bitpos: [23:0]; default: 0;
|
||||
* Represents the bytes numbers send to the DMA when EOF occurs.
|
||||
*/
|
||||
uint32_t chnl0_out_cnt:24;
|
||||
uint32_t reserved_24:8;
|
||||
};
|
||||
uint32_t val;
|
||||
} asrc_chnl0_out_cnt_reg_t;
|
||||
|
||||
/** Type of chnl1_out_cnt register
|
||||
* Status Registers
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** chnl1_out_cnt : RO; bitpos: [23:0]; default: 0;
|
||||
* Represents the data byte numbers send to the DMA when EOF occurs.
|
||||
*/
|
||||
uint32_t chnl1_out_cnt:24;
|
||||
uint32_t reserved_24:8;
|
||||
};
|
||||
uint32_t val;
|
||||
} asrc_chnl1_out_cnt_reg_t;
|
||||
|
||||
|
||||
/** Group: DEBUG registers */
|
||||
/** Type of chnl0_trace1 register
|
||||
* Debug Register1
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** chnl0_out_inc : RO; bitpos: [23:0]; default: 0;
|
||||
* Represents the samples numbers send to the DMA
|
||||
*/
|
||||
uint32_t chnl0_out_inc:24;
|
||||
uint32_t reserved_24:8;
|
||||
};
|
||||
uint32_t val;
|
||||
} asrc_chnl0_trace1_reg_t;
|
||||
|
||||
/** Type of chnl1_trace1 register
|
||||
* Debug Register1
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** chnl1_out_inc : RO; bitpos: [23:0]; default: 0;
|
||||
* Represents the data byte numbers send to the DMA
|
||||
*/
|
||||
uint32_t chnl1_out_inc:24;
|
||||
uint32_t reserved_24:8;
|
||||
};
|
||||
uint32_t val;
|
||||
} asrc_chnl1_trace1_reg_t;
|
||||
|
||||
|
||||
/** Group: Configuration registers */
|
||||
/** Type of sys register
|
||||
* Control and configuration
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** clk_en : R/W; bitpos: [0]; default: 0;
|
||||
* Reserved
|
||||
*/
|
||||
uint32_t clk_en:1;
|
||||
/** chnl0_clk_fo : R/W; bitpos: [1]; default: 0;
|
||||
* Set this bit to make channel0 clock free run.
|
||||
*/
|
||||
uint32_t chnl0_clk_fo:1;
|
||||
/** chnl1_clk_fo : R/W; bitpos: [2]; default: 0;
|
||||
* Set this bit to make channel1 clock free run.
|
||||
*/
|
||||
uint32_t chnl1_clk_fo:1;
|
||||
/** chnl0_outfifo_clk_fo : R/W; bitpos: [3]; default: 0;
|
||||
* Set this bit to make channel0 outfifo clock free run.
|
||||
*/
|
||||
uint32_t chnl0_outfifo_clk_fo:1;
|
||||
/** chnl0_infifo_clk_fo : R/W; bitpos: [4]; default: 0;
|
||||
* Set this bit to make channel0 infifo clock free run.
|
||||
*/
|
||||
uint32_t chnl0_infifo_clk_fo:1;
|
||||
/** chnl1_outfifo_clk_fo : R/W; bitpos: [5]; default: 0;
|
||||
* Set this bit to make channel1 outfifo clock free run.
|
||||
*/
|
||||
uint32_t chnl1_outfifo_clk_fo:1;
|
||||
/** chnl1_infifo_clk_fo : R/W; bitpos: [6]; default: 0;
|
||||
* Set this bit to make channel1 infifo clock free run.
|
||||
*/
|
||||
uint32_t chnl1_infifo_clk_fo:1;
|
||||
uint32_t reserved_7:25;
|
||||
};
|
||||
uint32_t val;
|
||||
} asrc_sys_reg_t;
|
||||
|
||||
|
||||
/** Group: Version register */
|
||||
/** Type of date register
|
||||
* Control and configuration registers
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** date : R/W; bitpos: [27:0]; default: 37777984;
|
||||
* Reserved
|
||||
*/
|
||||
uint32_t date:28;
|
||||
uint32_t reserved_28:4;
|
||||
};
|
||||
uint32_t val;
|
||||
} asrc_date_reg_t;
|
||||
|
||||
|
||||
typedef struct {
|
||||
volatile asrc_chnl0_cfg0_reg_t chnl0_cfg0;
|
||||
volatile asrc_chnl0_cfg1_reg_t chnl0_cfg1;
|
||||
volatile asrc_chnl0_cfg2_reg_t chnl0_cfg2;
|
||||
volatile asrc_chnl0_cfg3_reg_t chnl0_cfg3;
|
||||
volatile asrc_chnl0_cfg4_reg_t chnl0_cfg4;
|
||||
volatile asrc_chnl0_cfg5_reg_t chnl0_cfg5;
|
||||
volatile asrc_chnl0_cfg6_reg_t chnl0_cfg6;
|
||||
volatile asrc_chnl0_fifo_ctrl_reg_t chnl0_fifo_ctrl;
|
||||
volatile asrc_chnl0_int_raw_reg_t chnl0_int_raw;
|
||||
volatile asrc_chnl0_int_st_reg_t chnl0_int_st;
|
||||
volatile asrc_chnl0_int_ena_reg_t chnl0_int_ena;
|
||||
volatile asrc_chnl0_int_clr_reg_t chnl0_int_clr;
|
||||
volatile asrc_chnl0_out_cnt_reg_t chnl0_out_cnt;
|
||||
uint32_t reserved_034;
|
||||
volatile asrc_chnl0_trace1_reg_t chnl0_trace1;
|
||||
volatile asrc_chnl1_cfg0_reg_t chnl1_cfg0;
|
||||
volatile asrc_chnl1_cfg1_reg_t chnl1_cfg1;
|
||||
volatile asrc_chnl1_cfg2_reg_t chnl1_cfg2;
|
||||
volatile asrc_chnl1_cfg3_reg_t chnl1_cfg3;
|
||||
volatile asrc_chnl1_cfg4_reg_t chnl1_cfg4;
|
||||
volatile asrc_chnl1_cfg5_reg_t chnl1_cfg5;
|
||||
volatile asrc_chnl1_cfg6_reg_t chnl1_cfg6;
|
||||
volatile asrc_chnl1_fifo_ctrl_reg_t chnl1_fifo_ctrl;
|
||||
volatile asrc_chnl1_int_raw_reg_t chnl1_int_raw;
|
||||
volatile asrc_chnl1_int_st_reg_t chnl1_int_st;
|
||||
volatile asrc_chnl1_int_ena_reg_t chnl1_int_ena;
|
||||
volatile asrc_chnl1_int_clr_reg_t chnl1_int_clr;
|
||||
volatile asrc_chnl1_out_cnt_reg_t chnl1_out_cnt;
|
||||
uint32_t reserved_070;
|
||||
volatile asrc_chnl1_trace1_reg_t chnl1_trace1;
|
||||
uint32_t reserved_078[32];
|
||||
volatile asrc_sys_reg_t sys;
|
||||
volatile asrc_date_reg_t date;
|
||||
} asrc_dev_t;
|
||||
|
||||
|
||||
#ifndef __cplusplus
|
||||
_Static_assert(sizeof(asrc_dev_t) == 0x100, "Invalid size of asrc_dev_t structure");
|
||||
#endif
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
5757
components/soc/esp32s31/register/soc/axi_dma_reg.h
Normal file
5757
components/soc/esp32s31/register/soc/axi_dma_reg.h
Normal file
File diff suppressed because it is too large
Load Diff
1822
components/soc/esp32s31/register/soc/axi_dma_struct.h
Normal file
1822
components/soc/esp32s31/register/soc/axi_dma_struct.h
Normal file
File diff suppressed because it is too large
Load Diff
6881
components/soc/esp32s31/register/soc/axi_perf_mon_reg.h
Normal file
6881
components/soc/esp32s31/register/soc/axi_perf_mon_reg.h
Normal file
File diff suppressed because it is too large
Load Diff
7188
components/soc/esp32s31/register/soc/axi_perf_mon_struct.h
Normal file
7188
components/soc/esp32s31/register/soc/axi_perf_mon_struct.h
Normal file
File diff suppressed because it is too large
Load Diff
572
components/soc/esp32s31/register/soc/bitscrambler_reg.h
Normal file
572
components/soc/esp32s31/register/soc/bitscrambler_reg.h
Normal file
@@ -0,0 +1,572 @@
|
||||
/**
|
||||
* SPDX-FileCopyrightText: 2025 Espressif Systems (Shanghai) CO LTD
|
||||
*
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
*/
|
||||
#pragma once
|
||||
|
||||
#include <stdint.h>
|
||||
#include "soc/soc.h"
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
/** BITSCRAMBLER_TX_INST_CFG0_REG register
|
||||
* Control and configuration registers
|
||||
*/
|
||||
#define BITSCRAMBLER_TX_INST_CFG0_REG (DR_REG_BITSCRAMBLER_BASE + 0x0)
|
||||
/** BITSCRAMBLER_TX_INST_IDX : R/W; bitpos: [2:0]; default: 0;
|
||||
* write this bits to specify the one of 8 instruction
|
||||
*/
|
||||
#define BITSCRAMBLER_TX_INST_IDX 0x00000007U
|
||||
#define BITSCRAMBLER_TX_INST_IDX_M (BITSCRAMBLER_TX_INST_IDX_V << BITSCRAMBLER_TX_INST_IDX_S)
|
||||
#define BITSCRAMBLER_TX_INST_IDX_V 0x00000007U
|
||||
#define BITSCRAMBLER_TX_INST_IDX_S 0
|
||||
/** BITSCRAMBLER_TX_INST_POS : R/W; bitpos: [6:3]; default: 0;
|
||||
* write this bits to specify the bit position of 257 bit instruction which in units
|
||||
* of 32 bits
|
||||
*/
|
||||
#define BITSCRAMBLER_TX_INST_POS 0x0000000FU
|
||||
#define BITSCRAMBLER_TX_INST_POS_M (BITSCRAMBLER_TX_INST_POS_V << BITSCRAMBLER_TX_INST_POS_S)
|
||||
#define BITSCRAMBLER_TX_INST_POS_V 0x0000000FU
|
||||
#define BITSCRAMBLER_TX_INST_POS_S 3
|
||||
|
||||
/** BITSCRAMBLER_TX_INST_CFG1_REG register
|
||||
* Control and configuration registers
|
||||
*/
|
||||
#define BITSCRAMBLER_TX_INST_CFG1_REG (DR_REG_BITSCRAMBLER_BASE + 0x4)
|
||||
/** BITSCRAMBLER_TX_INST : R/W; bitpos: [31:0]; default: 4;
|
||||
* write this bits to update instruction which specified by
|
||||
* BITSCRAMBLER_TX_INST_CFG0_REG, Read this bits to get instruction which specified by
|
||||
* BITSCRAMBLER_TX_INST_CFG0_REG
|
||||
*/
|
||||
#define BITSCRAMBLER_TX_INST 0xFFFFFFFFU
|
||||
#define BITSCRAMBLER_TX_INST_M (BITSCRAMBLER_TX_INST_V << BITSCRAMBLER_TX_INST_S)
|
||||
#define BITSCRAMBLER_TX_INST_V 0xFFFFFFFFU
|
||||
#define BITSCRAMBLER_TX_INST_S 0
|
||||
|
||||
/** BITSCRAMBLER_RX_INST_CFG0_REG register
|
||||
* Control and configuration registers
|
||||
*/
|
||||
#define BITSCRAMBLER_RX_INST_CFG0_REG (DR_REG_BITSCRAMBLER_BASE + 0x8)
|
||||
/** BITSCRAMBLER_RX_INST_IDX : R/W; bitpos: [2:0]; default: 0;
|
||||
* write this bits to specify the one of 8 instruction
|
||||
*/
|
||||
#define BITSCRAMBLER_RX_INST_IDX 0x00000007U
|
||||
#define BITSCRAMBLER_RX_INST_IDX_M (BITSCRAMBLER_RX_INST_IDX_V << BITSCRAMBLER_RX_INST_IDX_S)
|
||||
#define BITSCRAMBLER_RX_INST_IDX_V 0x00000007U
|
||||
#define BITSCRAMBLER_RX_INST_IDX_S 0
|
||||
/** BITSCRAMBLER_RX_INST_POS : R/W; bitpos: [6:3]; default: 0;
|
||||
* write this bits to specify the bit position of 257 bit instruction which in units
|
||||
* of 32 bits
|
||||
*/
|
||||
#define BITSCRAMBLER_RX_INST_POS 0x0000000FU
|
||||
#define BITSCRAMBLER_RX_INST_POS_M (BITSCRAMBLER_RX_INST_POS_V << BITSCRAMBLER_RX_INST_POS_S)
|
||||
#define BITSCRAMBLER_RX_INST_POS_V 0x0000000FU
|
||||
#define BITSCRAMBLER_RX_INST_POS_S 3
|
||||
|
||||
/** BITSCRAMBLER_RX_INST_CFG1_REG register
|
||||
* Control and configuration registers
|
||||
*/
|
||||
#define BITSCRAMBLER_RX_INST_CFG1_REG (DR_REG_BITSCRAMBLER_BASE + 0xc)
|
||||
/** BITSCRAMBLER_RX_INST : R/W; bitpos: [31:0]; default: 12;
|
||||
* write this bits to update instruction which specified by
|
||||
* BITSCRAMBLER_RX_INST_CFG0_REG, Read this bits to get instruction which specified by
|
||||
* BITSCRAMBLER_RX_INST_CFG0_REG
|
||||
*/
|
||||
#define BITSCRAMBLER_RX_INST 0xFFFFFFFFU
|
||||
#define BITSCRAMBLER_RX_INST_M (BITSCRAMBLER_RX_INST_V << BITSCRAMBLER_RX_INST_S)
|
||||
#define BITSCRAMBLER_RX_INST_V 0xFFFFFFFFU
|
||||
#define BITSCRAMBLER_RX_INST_S 0
|
||||
|
||||
/** BITSCRAMBLER_TX_LUT_CFG0_REG register
|
||||
* Control and configuration registers
|
||||
*/
|
||||
#define BITSCRAMBLER_TX_LUT_CFG0_REG (DR_REG_BITSCRAMBLER_BASE + 0x10)
|
||||
/** BITSCRAMBLER_TX_LUT_IDX : R/W; bitpos: [10:0]; default: 0;
|
||||
* write this bits to specify the bytes position of LUT RAM based on
|
||||
* reg_bitscrambler_tx_lut_mode
|
||||
*/
|
||||
#define BITSCRAMBLER_TX_LUT_IDX 0x000007FFU
|
||||
#define BITSCRAMBLER_TX_LUT_IDX_M (BITSCRAMBLER_TX_LUT_IDX_V << BITSCRAMBLER_TX_LUT_IDX_S)
|
||||
#define BITSCRAMBLER_TX_LUT_IDX_V 0x000007FFU
|
||||
#define BITSCRAMBLER_TX_LUT_IDX_S 0
|
||||
/** BITSCRAMBLER_TX_LUT_MODE : R/W; bitpos: [12:11]; default: 0;
|
||||
* write this bits to specify the bytes mode of LUT RAM, 0: 1 byte,1: 2bytes, 2: 4
|
||||
* bytes
|
||||
*/
|
||||
#define BITSCRAMBLER_TX_LUT_MODE 0x00000003U
|
||||
#define BITSCRAMBLER_TX_LUT_MODE_M (BITSCRAMBLER_TX_LUT_MODE_V << BITSCRAMBLER_TX_LUT_MODE_S)
|
||||
#define BITSCRAMBLER_TX_LUT_MODE_V 0x00000003U
|
||||
#define BITSCRAMBLER_TX_LUT_MODE_S 11
|
||||
|
||||
/** BITSCRAMBLER_TX_LUT_CFG1_REG register
|
||||
* Control and configuration registers
|
||||
*/
|
||||
#define BITSCRAMBLER_TX_LUT_CFG1_REG (DR_REG_BITSCRAMBLER_BASE + 0x14)
|
||||
/** BITSCRAMBLER_TX_LUT : R/W; bitpos: [31:0]; default: 20;
|
||||
* write this bits to update LUT which specified by BITSCRAMBLER_TX_LUT_CFG0_REG, Read
|
||||
* this bits to get LUT which specified by BITSCRAMBLER_TX_LUT_CFG0_REG
|
||||
*/
|
||||
#define BITSCRAMBLER_TX_LUT 0xFFFFFFFFU
|
||||
#define BITSCRAMBLER_TX_LUT_M (BITSCRAMBLER_TX_LUT_V << BITSCRAMBLER_TX_LUT_S)
|
||||
#define BITSCRAMBLER_TX_LUT_V 0xFFFFFFFFU
|
||||
#define BITSCRAMBLER_TX_LUT_S 0
|
||||
|
||||
/** BITSCRAMBLER_RX_LUT_CFG0_REG register
|
||||
* Control and configuration registers
|
||||
*/
|
||||
#define BITSCRAMBLER_RX_LUT_CFG0_REG (DR_REG_BITSCRAMBLER_BASE + 0x18)
|
||||
/** BITSCRAMBLER_RX_LUT_IDX : R/W; bitpos: [10:0]; default: 0;
|
||||
* write this bits to specify the bytes position of LUT RAM based on
|
||||
* reg_bitscrambler_rx_lut_mode
|
||||
*/
|
||||
#define BITSCRAMBLER_RX_LUT_IDX 0x000007FFU
|
||||
#define BITSCRAMBLER_RX_LUT_IDX_M (BITSCRAMBLER_RX_LUT_IDX_V << BITSCRAMBLER_RX_LUT_IDX_S)
|
||||
#define BITSCRAMBLER_RX_LUT_IDX_V 0x000007FFU
|
||||
#define BITSCRAMBLER_RX_LUT_IDX_S 0
|
||||
/** BITSCRAMBLER_RX_LUT_MODE : R/W; bitpos: [12:11]; default: 0;
|
||||
* write this bits to specify the bytes mode of LUT RAM, 0: 1 byte,1: 2bytes, 2: 4
|
||||
* bytes
|
||||
*/
|
||||
#define BITSCRAMBLER_RX_LUT_MODE 0x00000003U
|
||||
#define BITSCRAMBLER_RX_LUT_MODE_M (BITSCRAMBLER_RX_LUT_MODE_V << BITSCRAMBLER_RX_LUT_MODE_S)
|
||||
#define BITSCRAMBLER_RX_LUT_MODE_V 0x00000003U
|
||||
#define BITSCRAMBLER_RX_LUT_MODE_S 11
|
||||
|
||||
/** BITSCRAMBLER_RX_LUT_CFG1_REG register
|
||||
* Control and configuration registers
|
||||
*/
|
||||
#define BITSCRAMBLER_RX_LUT_CFG1_REG (DR_REG_BITSCRAMBLER_BASE + 0x1c)
|
||||
/** BITSCRAMBLER_RX_LUT : R/W; bitpos: [31:0]; default: 28;
|
||||
* write this bits to update LUT which specified by BITSCRAMBLER_RX_LUT_CFG0_REG, Read
|
||||
* this bits to get LUT which specified by BITSCRAMBLER_RX_LUT_CFG0_REG
|
||||
*/
|
||||
#define BITSCRAMBLER_RX_LUT 0xFFFFFFFFU
|
||||
#define BITSCRAMBLER_RX_LUT_M (BITSCRAMBLER_RX_LUT_V << BITSCRAMBLER_RX_LUT_S)
|
||||
#define BITSCRAMBLER_RX_LUT_V 0xFFFFFFFFU
|
||||
#define BITSCRAMBLER_RX_LUT_S 0
|
||||
|
||||
/** BITSCRAMBLER_TX_TAILING_BITS_REG register
|
||||
* Control and configuration registers
|
||||
*/
|
||||
#define BITSCRAMBLER_TX_TAILING_BITS_REG (DR_REG_BITSCRAMBLER_BASE + 0x20)
|
||||
/** BITSCRAMBLER_TX_TAILING_BITS : R/W; bitpos: [15:0]; default: 0;
|
||||
* write this bits to specify the extra data bit length after getting EOF
|
||||
*/
|
||||
#define BITSCRAMBLER_TX_TAILING_BITS 0x0000FFFFU
|
||||
#define BITSCRAMBLER_TX_TAILING_BITS_M (BITSCRAMBLER_TX_TAILING_BITS_V << BITSCRAMBLER_TX_TAILING_BITS_S)
|
||||
#define BITSCRAMBLER_TX_TAILING_BITS_V 0x0000FFFFU
|
||||
#define BITSCRAMBLER_TX_TAILING_BITS_S 0
|
||||
|
||||
/** BITSCRAMBLER_RX_TAILING_BITS_REG register
|
||||
* Control and configuration registers
|
||||
*/
|
||||
#define BITSCRAMBLER_RX_TAILING_BITS_REG (DR_REG_BITSCRAMBLER_BASE + 0x24)
|
||||
/** BITSCRAMBLER_RX_TAILING_BITS : R/W; bitpos: [15:0]; default: 0;
|
||||
* write this bits to specify the extra data bit length after getting EOF
|
||||
*/
|
||||
#define BITSCRAMBLER_RX_TAILING_BITS 0x0000FFFFU
|
||||
#define BITSCRAMBLER_RX_TAILING_BITS_M (BITSCRAMBLER_RX_TAILING_BITS_V << BITSCRAMBLER_RX_TAILING_BITS_S)
|
||||
#define BITSCRAMBLER_RX_TAILING_BITS_V 0x0000FFFFU
|
||||
#define BITSCRAMBLER_RX_TAILING_BITS_S 0
|
||||
|
||||
/** BITSCRAMBLER_TX_CTRL_REG register
|
||||
* Control and configuration registers
|
||||
*/
|
||||
#define BITSCRAMBLER_TX_CTRL_REG (DR_REG_BITSCRAMBLER_BASE + 0x28)
|
||||
/** BITSCRAMBLER_TX_ENA : R/W; bitpos: [0]; default: 0;
|
||||
* write this bit to enable the bitscrambler tx
|
||||
*/
|
||||
#define BITSCRAMBLER_TX_ENA (BIT(0))
|
||||
#define BITSCRAMBLER_TX_ENA_M (BITSCRAMBLER_TX_ENA_V << BITSCRAMBLER_TX_ENA_S)
|
||||
#define BITSCRAMBLER_TX_ENA_V 0x00000001U
|
||||
#define BITSCRAMBLER_TX_ENA_S 0
|
||||
/** BITSCRAMBLER_TX_PAUSE : R/W; bitpos: [1]; default: 0;
|
||||
* write this bit to pause the bitscrambler tx core
|
||||
*/
|
||||
#define BITSCRAMBLER_TX_PAUSE (BIT(1))
|
||||
#define BITSCRAMBLER_TX_PAUSE_M (BITSCRAMBLER_TX_PAUSE_V << BITSCRAMBLER_TX_PAUSE_S)
|
||||
#define BITSCRAMBLER_TX_PAUSE_V 0x00000001U
|
||||
#define BITSCRAMBLER_TX_PAUSE_S 1
|
||||
/** BITSCRAMBLER_TX_HALT : R/W; bitpos: [2]; default: 1;
|
||||
* write this bit to halt the bitscrambler tx core
|
||||
*/
|
||||
#define BITSCRAMBLER_TX_HALT (BIT(2))
|
||||
#define BITSCRAMBLER_TX_HALT_M (BITSCRAMBLER_TX_HALT_V << BITSCRAMBLER_TX_HALT_S)
|
||||
#define BITSCRAMBLER_TX_HALT_V 0x00000001U
|
||||
#define BITSCRAMBLER_TX_HALT_S 2
|
||||
/** BITSCRAMBLER_TX_EOF_MODE : R/W; bitpos: [3]; default: 0;
|
||||
* write this bit to ser the bitscrambler tx core EOF signal generating mode which is
|
||||
* combined with reg_bitscrambler_tx_tailing_bits, 0: counter by read dma fifo, 0
|
||||
* counter by write peripheral buffer
|
||||
*/
|
||||
#define BITSCRAMBLER_TX_EOF_MODE (BIT(3))
|
||||
#define BITSCRAMBLER_TX_EOF_MODE_M (BITSCRAMBLER_TX_EOF_MODE_V << BITSCRAMBLER_TX_EOF_MODE_S)
|
||||
#define BITSCRAMBLER_TX_EOF_MODE_V 0x00000001U
|
||||
#define BITSCRAMBLER_TX_EOF_MODE_S 3
|
||||
/** BITSCRAMBLER_TX_COND_MODE : R/W; bitpos: [4]; default: 0;
|
||||
* write this bit to specify the LOOP instruction condition mode of bitscrambler tx
|
||||
* core, 0: use the little than operator to get the condition, 1: use not equal
|
||||
* operator to get the condition
|
||||
*/
|
||||
#define BITSCRAMBLER_TX_COND_MODE (BIT(4))
|
||||
#define BITSCRAMBLER_TX_COND_MODE_M (BITSCRAMBLER_TX_COND_MODE_V << BITSCRAMBLER_TX_COND_MODE_S)
|
||||
#define BITSCRAMBLER_TX_COND_MODE_V 0x00000001U
|
||||
#define BITSCRAMBLER_TX_COND_MODE_S 4
|
||||
/** BITSCRAMBLER_TX_FETCH_MODE : R/W; bitpos: [5]; default: 0;
|
||||
* write this bit to set the bitscrambler tx core fetch instruction mode, 0: prefetch
|
||||
* by reset, 1: fetch by instructions
|
||||
*/
|
||||
#define BITSCRAMBLER_TX_FETCH_MODE (BIT(5))
|
||||
#define BITSCRAMBLER_TX_FETCH_MODE_M (BITSCRAMBLER_TX_FETCH_MODE_V << BITSCRAMBLER_TX_FETCH_MODE_S)
|
||||
#define BITSCRAMBLER_TX_FETCH_MODE_V 0x00000001U
|
||||
#define BITSCRAMBLER_TX_FETCH_MODE_S 5
|
||||
/** BITSCRAMBLER_TX_HALT_MODE : R/W; bitpos: [6]; default: 0;
|
||||
* write this bit to set the bitscrambler tx core halt mode when tx_halt is set, 0:
|
||||
* wait write data back done, , 1: ignore write data back
|
||||
*/
|
||||
#define BITSCRAMBLER_TX_HALT_MODE (BIT(6))
|
||||
#define BITSCRAMBLER_TX_HALT_MODE_M (BITSCRAMBLER_TX_HALT_MODE_V << BITSCRAMBLER_TX_HALT_MODE_S)
|
||||
#define BITSCRAMBLER_TX_HALT_MODE_V 0x00000001U
|
||||
#define BITSCRAMBLER_TX_HALT_MODE_S 6
|
||||
/** BITSCRAMBLER_TX_RD_DUMMY : R/W; bitpos: [7]; default: 0;
|
||||
* write this bit to set the bitscrambler tx core read data mode when EOF received.0:
|
||||
* wait read data, 1: ignore read data
|
||||
*/
|
||||
#define BITSCRAMBLER_TX_RD_DUMMY (BIT(7))
|
||||
#define BITSCRAMBLER_TX_RD_DUMMY_M (BITSCRAMBLER_TX_RD_DUMMY_V << BITSCRAMBLER_TX_RD_DUMMY_S)
|
||||
#define BITSCRAMBLER_TX_RD_DUMMY_V 0x00000001U
|
||||
#define BITSCRAMBLER_TX_RD_DUMMY_S 7
|
||||
/** BITSCRAMBLER_TX_FIFO_RST : WT; bitpos: [8]; default: 0;
|
||||
* write this bit to reset the bitscrambler tx fifo
|
||||
*/
|
||||
#define BITSCRAMBLER_TX_FIFO_RST (BIT(8))
|
||||
#define BITSCRAMBLER_TX_FIFO_RST_M (BITSCRAMBLER_TX_FIFO_RST_V << BITSCRAMBLER_TX_FIFO_RST_S)
|
||||
#define BITSCRAMBLER_TX_FIFO_RST_V 0x00000001U
|
||||
#define BITSCRAMBLER_TX_FIFO_RST_S 8
|
||||
|
||||
/** BITSCRAMBLER_RX_CTRL_REG register
|
||||
* Control and configuration registers
|
||||
*/
|
||||
#define BITSCRAMBLER_RX_CTRL_REG (DR_REG_BITSCRAMBLER_BASE + 0x2c)
|
||||
/** BITSCRAMBLER_RX_ENA : R/W; bitpos: [0]; default: 0;
|
||||
* write this bit to enable the bitscrambler rx
|
||||
*/
|
||||
#define BITSCRAMBLER_RX_ENA (BIT(0))
|
||||
#define BITSCRAMBLER_RX_ENA_M (BITSCRAMBLER_RX_ENA_V << BITSCRAMBLER_RX_ENA_S)
|
||||
#define BITSCRAMBLER_RX_ENA_V 0x00000001U
|
||||
#define BITSCRAMBLER_RX_ENA_S 0
|
||||
/** BITSCRAMBLER_RX_PAUSE : R/W; bitpos: [1]; default: 0;
|
||||
* write this bit to pause the bitscrambler rx core
|
||||
*/
|
||||
#define BITSCRAMBLER_RX_PAUSE (BIT(1))
|
||||
#define BITSCRAMBLER_RX_PAUSE_M (BITSCRAMBLER_RX_PAUSE_V << BITSCRAMBLER_RX_PAUSE_S)
|
||||
#define BITSCRAMBLER_RX_PAUSE_V 0x00000001U
|
||||
#define BITSCRAMBLER_RX_PAUSE_S 1
|
||||
/** BITSCRAMBLER_RX_HALT : R/W; bitpos: [2]; default: 1;
|
||||
* write this bit to halt the bitscrambler rx core
|
||||
*/
|
||||
#define BITSCRAMBLER_RX_HALT (BIT(2))
|
||||
#define BITSCRAMBLER_RX_HALT_M (BITSCRAMBLER_RX_HALT_V << BITSCRAMBLER_RX_HALT_S)
|
||||
#define BITSCRAMBLER_RX_HALT_V 0x00000001U
|
||||
#define BITSCRAMBLER_RX_HALT_S 2
|
||||
/** BITSCRAMBLER_RX_EOF_MODE : R/W; bitpos: [3]; default: 0;
|
||||
* write this bit to ser the bitscrambler rx core EOF signal generating mode which is
|
||||
* combined with reg_bitscrambler_rx_tailing_bits, 0: counter by read peripheral
|
||||
* buffer, 0 counter by write dma fifo
|
||||
*/
|
||||
#define BITSCRAMBLER_RX_EOF_MODE (BIT(3))
|
||||
#define BITSCRAMBLER_RX_EOF_MODE_M (BITSCRAMBLER_RX_EOF_MODE_V << BITSCRAMBLER_RX_EOF_MODE_S)
|
||||
#define BITSCRAMBLER_RX_EOF_MODE_V 0x00000001U
|
||||
#define BITSCRAMBLER_RX_EOF_MODE_S 3
|
||||
/** BITSCRAMBLER_RX_COND_MODE : R/W; bitpos: [4]; default: 0;
|
||||
* write this bit to specify the LOOP instruction condition mode of bitscrambler rx
|
||||
* core, 0: use the little than operator to get the condition, 1: use not equal
|
||||
* operator to get the condition
|
||||
*/
|
||||
#define BITSCRAMBLER_RX_COND_MODE (BIT(4))
|
||||
#define BITSCRAMBLER_RX_COND_MODE_M (BITSCRAMBLER_RX_COND_MODE_V << BITSCRAMBLER_RX_COND_MODE_S)
|
||||
#define BITSCRAMBLER_RX_COND_MODE_V 0x00000001U
|
||||
#define BITSCRAMBLER_RX_COND_MODE_S 4
|
||||
/** BITSCRAMBLER_RX_FETCH_MODE : R/W; bitpos: [5]; default: 0;
|
||||
* write this bit to set the bitscrambler rx core fetch instruction mode, 0: prefetch
|
||||
* by reset, 1: fetch by instructions
|
||||
*/
|
||||
#define BITSCRAMBLER_RX_FETCH_MODE (BIT(5))
|
||||
#define BITSCRAMBLER_RX_FETCH_MODE_M (BITSCRAMBLER_RX_FETCH_MODE_V << BITSCRAMBLER_RX_FETCH_MODE_S)
|
||||
#define BITSCRAMBLER_RX_FETCH_MODE_V 0x00000001U
|
||||
#define BITSCRAMBLER_RX_FETCH_MODE_S 5
|
||||
/** BITSCRAMBLER_RX_HALT_MODE : R/W; bitpos: [6]; default: 0;
|
||||
* write this bit to set the bitscrambler rx core halt mode when rx_halt is set, 0:
|
||||
* wait write data back done, , 1: ignore write data back
|
||||
*/
|
||||
#define BITSCRAMBLER_RX_HALT_MODE (BIT(6))
|
||||
#define BITSCRAMBLER_RX_HALT_MODE_M (BITSCRAMBLER_RX_HALT_MODE_V << BITSCRAMBLER_RX_HALT_MODE_S)
|
||||
#define BITSCRAMBLER_RX_HALT_MODE_V 0x00000001U
|
||||
#define BITSCRAMBLER_RX_HALT_MODE_S 6
|
||||
/** BITSCRAMBLER_RX_RD_DUMMY : R/W; bitpos: [7]; default: 0;
|
||||
* write this bit to set the bitscrambler rx core read data mode when EOF received.0:
|
||||
* wait read data, 1: ignore read data
|
||||
*/
|
||||
#define BITSCRAMBLER_RX_RD_DUMMY (BIT(7))
|
||||
#define BITSCRAMBLER_RX_RD_DUMMY_M (BITSCRAMBLER_RX_RD_DUMMY_V << BITSCRAMBLER_RX_RD_DUMMY_S)
|
||||
#define BITSCRAMBLER_RX_RD_DUMMY_V 0x00000001U
|
||||
#define BITSCRAMBLER_RX_RD_DUMMY_S 7
|
||||
/** BITSCRAMBLER_RX_FIFO_RST : WT; bitpos: [8]; default: 0;
|
||||
* write this bit to reset the bitscrambler rx fifo
|
||||
*/
|
||||
#define BITSCRAMBLER_RX_FIFO_RST (BIT(8))
|
||||
#define BITSCRAMBLER_RX_FIFO_RST_M (BITSCRAMBLER_RX_FIFO_RST_V << BITSCRAMBLER_RX_FIFO_RST_S)
|
||||
#define BITSCRAMBLER_RX_FIFO_RST_V 0x00000001U
|
||||
#define BITSCRAMBLER_RX_FIFO_RST_S 8
|
||||
|
||||
/** BITSCRAMBLER_TX_STATE_REG register
|
||||
* Status registers
|
||||
*/
|
||||
#define BITSCRAMBLER_TX_STATE_REG (DR_REG_BITSCRAMBLER_BASE + 0x30)
|
||||
/** BITSCRAMBLER_TX_IN_IDLE : RO; bitpos: [0]; default: 1;
|
||||
* represents the bitscrambler tx core in halt mode
|
||||
*/
|
||||
#define BITSCRAMBLER_TX_IN_IDLE (BIT(0))
|
||||
#define BITSCRAMBLER_TX_IN_IDLE_M (BITSCRAMBLER_TX_IN_IDLE_V << BITSCRAMBLER_TX_IN_IDLE_S)
|
||||
#define BITSCRAMBLER_TX_IN_IDLE_V 0x00000001U
|
||||
#define BITSCRAMBLER_TX_IN_IDLE_S 0
|
||||
/** BITSCRAMBLER_TX_IN_RUN : RO; bitpos: [1]; default: 0;
|
||||
* represents the bitscrambler tx core in run mode
|
||||
*/
|
||||
#define BITSCRAMBLER_TX_IN_RUN (BIT(1))
|
||||
#define BITSCRAMBLER_TX_IN_RUN_M (BITSCRAMBLER_TX_IN_RUN_V << BITSCRAMBLER_TX_IN_RUN_S)
|
||||
#define BITSCRAMBLER_TX_IN_RUN_V 0x00000001U
|
||||
#define BITSCRAMBLER_TX_IN_RUN_S 1
|
||||
/** BITSCRAMBLER_TX_IN_WAIT : RO; bitpos: [2]; default: 0;
|
||||
* represents the bitscrambler tx core in wait mode to wait write back done
|
||||
*/
|
||||
#define BITSCRAMBLER_TX_IN_WAIT (BIT(2))
|
||||
#define BITSCRAMBLER_TX_IN_WAIT_M (BITSCRAMBLER_TX_IN_WAIT_V << BITSCRAMBLER_TX_IN_WAIT_S)
|
||||
#define BITSCRAMBLER_TX_IN_WAIT_V 0x00000001U
|
||||
#define BITSCRAMBLER_TX_IN_WAIT_S 2
|
||||
/** BITSCRAMBLER_TX_IN_PAUSE : RO; bitpos: [3]; default: 0;
|
||||
* represents the bitscrambler tx core in pause mode
|
||||
*/
|
||||
#define BITSCRAMBLER_TX_IN_PAUSE (BIT(3))
|
||||
#define BITSCRAMBLER_TX_IN_PAUSE_M (BITSCRAMBLER_TX_IN_PAUSE_V << BITSCRAMBLER_TX_IN_PAUSE_S)
|
||||
#define BITSCRAMBLER_TX_IN_PAUSE_V 0x00000001U
|
||||
#define BITSCRAMBLER_TX_IN_PAUSE_S 3
|
||||
/** BITSCRAMBLER_TX_FIFO_EMPTY : RO; bitpos: [4]; default: 1;
|
||||
* represents the bitscrambler tx fifo in empty state
|
||||
*/
|
||||
#define BITSCRAMBLER_TX_FIFO_EMPTY (BIT(4))
|
||||
#define BITSCRAMBLER_TX_FIFO_EMPTY_M (BITSCRAMBLER_TX_FIFO_EMPTY_V << BITSCRAMBLER_TX_FIFO_EMPTY_S)
|
||||
#define BITSCRAMBLER_TX_FIFO_EMPTY_V 0x00000001U
|
||||
#define BITSCRAMBLER_TX_FIFO_EMPTY_S 4
|
||||
/** BITSCRAMBLER_TX_CRC_RDY : RO; bitpos: [5]; default: 0;
|
||||
* represents the crc calculate result of bitscrambler tx path is ready
|
||||
*/
|
||||
#define BITSCRAMBLER_TX_CRC_RDY (BIT(5))
|
||||
#define BITSCRAMBLER_TX_CRC_RDY_M (BITSCRAMBLER_TX_CRC_RDY_V << BITSCRAMBLER_TX_CRC_RDY_S)
|
||||
#define BITSCRAMBLER_TX_CRC_RDY_V 0x00000001U
|
||||
#define BITSCRAMBLER_TX_CRC_RDY_S 5
|
||||
/** BITSCRAMBLER_TX_EOF_GET_CNT : RO; bitpos: [29:16]; default: 0;
|
||||
* represents the bytes numbers of bitscrambler tx core when get EOF
|
||||
*/
|
||||
#define BITSCRAMBLER_TX_EOF_GET_CNT 0x00003FFFU
|
||||
#define BITSCRAMBLER_TX_EOF_GET_CNT_M (BITSCRAMBLER_TX_EOF_GET_CNT_V << BITSCRAMBLER_TX_EOF_GET_CNT_S)
|
||||
#define BITSCRAMBLER_TX_EOF_GET_CNT_V 0x00003FFFU
|
||||
#define BITSCRAMBLER_TX_EOF_GET_CNT_S 16
|
||||
/** BITSCRAMBLER_TX_EOF_OVERLOAD : RO; bitpos: [30]; default: 0;
|
||||
* represents the some EOFs will be lost for bitscrambler tx core
|
||||
*/
|
||||
#define BITSCRAMBLER_TX_EOF_OVERLOAD (BIT(30))
|
||||
#define BITSCRAMBLER_TX_EOF_OVERLOAD_M (BITSCRAMBLER_TX_EOF_OVERLOAD_V << BITSCRAMBLER_TX_EOF_OVERLOAD_S)
|
||||
#define BITSCRAMBLER_TX_EOF_OVERLOAD_V 0x00000001U
|
||||
#define BITSCRAMBLER_TX_EOF_OVERLOAD_S 30
|
||||
/** BITSCRAMBLER_TX_EOF_TRACE_CLR : WT; bitpos: [31]; default: 0;
|
||||
* write this bit to clear reg_bitscrambler_tx_eof_overload and
|
||||
* reg_bitscrambler_tx_eof_get_cnt registers
|
||||
*/
|
||||
#define BITSCRAMBLER_TX_EOF_TRACE_CLR (BIT(31))
|
||||
#define BITSCRAMBLER_TX_EOF_TRACE_CLR_M (BITSCRAMBLER_TX_EOF_TRACE_CLR_V << BITSCRAMBLER_TX_EOF_TRACE_CLR_S)
|
||||
#define BITSCRAMBLER_TX_EOF_TRACE_CLR_V 0x00000001U
|
||||
#define BITSCRAMBLER_TX_EOF_TRACE_CLR_S 31
|
||||
|
||||
/** BITSCRAMBLER_RX_STATE_REG register
|
||||
* Status registers
|
||||
*/
|
||||
#define BITSCRAMBLER_RX_STATE_REG (DR_REG_BITSCRAMBLER_BASE + 0x34)
|
||||
/** BITSCRAMBLER_RX_IN_IDLE : RO; bitpos: [0]; default: 1;
|
||||
* represents the bitscrambler rx core in halt mode
|
||||
*/
|
||||
#define BITSCRAMBLER_RX_IN_IDLE (BIT(0))
|
||||
#define BITSCRAMBLER_RX_IN_IDLE_M (BITSCRAMBLER_RX_IN_IDLE_V << BITSCRAMBLER_RX_IN_IDLE_S)
|
||||
#define BITSCRAMBLER_RX_IN_IDLE_V 0x00000001U
|
||||
#define BITSCRAMBLER_RX_IN_IDLE_S 0
|
||||
/** BITSCRAMBLER_RX_IN_RUN : RO; bitpos: [1]; default: 0;
|
||||
* represents the bitscrambler rx core in run mode
|
||||
*/
|
||||
#define BITSCRAMBLER_RX_IN_RUN (BIT(1))
|
||||
#define BITSCRAMBLER_RX_IN_RUN_M (BITSCRAMBLER_RX_IN_RUN_V << BITSCRAMBLER_RX_IN_RUN_S)
|
||||
#define BITSCRAMBLER_RX_IN_RUN_V 0x00000001U
|
||||
#define BITSCRAMBLER_RX_IN_RUN_S 1
|
||||
/** BITSCRAMBLER_RX_IN_WAIT : RO; bitpos: [2]; default: 0;
|
||||
* represents the bitscrambler rx core in wait mode to wait write back done
|
||||
*/
|
||||
#define BITSCRAMBLER_RX_IN_WAIT (BIT(2))
|
||||
#define BITSCRAMBLER_RX_IN_WAIT_M (BITSCRAMBLER_RX_IN_WAIT_V << BITSCRAMBLER_RX_IN_WAIT_S)
|
||||
#define BITSCRAMBLER_RX_IN_WAIT_V 0x00000001U
|
||||
#define BITSCRAMBLER_RX_IN_WAIT_S 2
|
||||
/** BITSCRAMBLER_RX_IN_PAUSE : RO; bitpos: [3]; default: 0;
|
||||
* represents the bitscrambler rx core in pause mode
|
||||
*/
|
||||
#define BITSCRAMBLER_RX_IN_PAUSE (BIT(3))
|
||||
#define BITSCRAMBLER_RX_IN_PAUSE_M (BITSCRAMBLER_RX_IN_PAUSE_V << BITSCRAMBLER_RX_IN_PAUSE_S)
|
||||
#define BITSCRAMBLER_RX_IN_PAUSE_V 0x00000001U
|
||||
#define BITSCRAMBLER_RX_IN_PAUSE_S 3
|
||||
/** BITSCRAMBLER_RX_FIFO_FULL : RO; bitpos: [4]; default: 0;
|
||||
* represents the bitscrambler rx fifo in full state
|
||||
*/
|
||||
#define BITSCRAMBLER_RX_FIFO_FULL (BIT(4))
|
||||
#define BITSCRAMBLER_RX_FIFO_FULL_M (BITSCRAMBLER_RX_FIFO_FULL_V << BITSCRAMBLER_RX_FIFO_FULL_S)
|
||||
#define BITSCRAMBLER_RX_FIFO_FULL_V 0x00000001U
|
||||
#define BITSCRAMBLER_RX_FIFO_FULL_S 4
|
||||
/** BITSCRAMBLER_RX_CRC_RDY : RO; bitpos: [5]; default: 0;
|
||||
* represents the crc calculate result of bitscrambler rx path is ready
|
||||
*/
|
||||
#define BITSCRAMBLER_RX_CRC_RDY (BIT(5))
|
||||
#define BITSCRAMBLER_RX_CRC_RDY_M (BITSCRAMBLER_RX_CRC_RDY_V << BITSCRAMBLER_RX_CRC_RDY_S)
|
||||
#define BITSCRAMBLER_RX_CRC_RDY_V 0x00000001U
|
||||
#define BITSCRAMBLER_RX_CRC_RDY_S 5
|
||||
/** BITSCRAMBLER_RX_EOF_GET_CNT : RO; bitpos: [29:16]; default: 0;
|
||||
* represents the bytes numbers of bitscrambler rx core when get EOF
|
||||
*/
|
||||
#define BITSCRAMBLER_RX_EOF_GET_CNT 0x00003FFFU
|
||||
#define BITSCRAMBLER_RX_EOF_GET_CNT_M (BITSCRAMBLER_RX_EOF_GET_CNT_V << BITSCRAMBLER_RX_EOF_GET_CNT_S)
|
||||
#define BITSCRAMBLER_RX_EOF_GET_CNT_V 0x00003FFFU
|
||||
#define BITSCRAMBLER_RX_EOF_GET_CNT_S 16
|
||||
/** BITSCRAMBLER_RX_EOF_OVERLOAD : RO; bitpos: [30]; default: 0;
|
||||
* represents the some EOFs will be lost for bitscrambler rx core
|
||||
*/
|
||||
#define BITSCRAMBLER_RX_EOF_OVERLOAD (BIT(30))
|
||||
#define BITSCRAMBLER_RX_EOF_OVERLOAD_M (BITSCRAMBLER_RX_EOF_OVERLOAD_V << BITSCRAMBLER_RX_EOF_OVERLOAD_S)
|
||||
#define BITSCRAMBLER_RX_EOF_OVERLOAD_V 0x00000001U
|
||||
#define BITSCRAMBLER_RX_EOF_OVERLOAD_S 30
|
||||
/** BITSCRAMBLER_RX_EOF_TRACE_CLR : WT; bitpos: [31]; default: 0;
|
||||
* write this bit to clear reg_bitscrambler_rx_eof_overload and
|
||||
* reg_bitscrambler_rx_eof_get_cnt registers
|
||||
*/
|
||||
#define BITSCRAMBLER_RX_EOF_TRACE_CLR (BIT(31))
|
||||
#define BITSCRAMBLER_RX_EOF_TRACE_CLR_M (BITSCRAMBLER_RX_EOF_TRACE_CLR_V << BITSCRAMBLER_RX_EOF_TRACE_CLR_S)
|
||||
#define BITSCRAMBLER_RX_EOF_TRACE_CLR_V 0x00000001U
|
||||
#define BITSCRAMBLER_RX_EOF_TRACE_CLR_S 31
|
||||
|
||||
/** BITSCRAMBLER_TX_CNT_CFG_REG register
|
||||
* TX Counter cfg registers
|
||||
*/
|
||||
#define BITSCRAMBLER_TX_CNT_CFG_REG (DR_REG_BITSCRAMBLER_BASE + 0x38)
|
||||
/** BITSCRAMBLER_RX_CNT_A_CFG_VALUE : R/W; bitpos: [15:0]; default: 0;
|
||||
* config the tx counter a value
|
||||
*/
|
||||
#define BITSCRAMBLER_RX_CNT_A_CFG_VALUE 0x0000FFFFU
|
||||
#define BITSCRAMBLER_RX_CNT_A_CFG_VALUE_M (BITSCRAMBLER_RX_CNT_A_CFG_VALUE_V << BITSCRAMBLER_RX_CNT_A_CFG_VALUE_S)
|
||||
#define BITSCRAMBLER_RX_CNT_A_CFG_VALUE_V 0x0000FFFFU
|
||||
#define BITSCRAMBLER_RX_CNT_A_CFG_VALUE_S 0
|
||||
/** BITSCRAMBLER_RX_CNT_B_CFG_VALUE : R/W; bitpos: [31:16]; default: 0;
|
||||
* config the tx counter b value
|
||||
*/
|
||||
#define BITSCRAMBLER_RX_CNT_B_CFG_VALUE 0x0000FFFFU
|
||||
#define BITSCRAMBLER_RX_CNT_B_CFG_VALUE_M (BITSCRAMBLER_RX_CNT_B_CFG_VALUE_V << BITSCRAMBLER_RX_CNT_B_CFG_VALUE_S)
|
||||
#define BITSCRAMBLER_RX_CNT_B_CFG_VALUE_V 0x0000FFFFU
|
||||
#define BITSCRAMBLER_RX_CNT_B_CFG_VALUE_S 16
|
||||
|
||||
/** BITSCRAMBLER_RX_CNT_CFG_REG register
|
||||
* RX Counter cfg registers
|
||||
*/
|
||||
#define BITSCRAMBLER_RX_CNT_CFG_REG (DR_REG_BITSCRAMBLER_BASE + 0x3c)
|
||||
/** BITSCRAMBLER_TX_CNT_A_CFG_VALUE : R/W; bitpos: [15:0]; default: 0;
|
||||
* config the rx counter a value
|
||||
*/
|
||||
#define BITSCRAMBLER_TX_CNT_A_CFG_VALUE 0x0000FFFFU
|
||||
#define BITSCRAMBLER_TX_CNT_A_CFG_VALUE_M (BITSCRAMBLER_TX_CNT_A_CFG_VALUE_V << BITSCRAMBLER_TX_CNT_A_CFG_VALUE_S)
|
||||
#define BITSCRAMBLER_TX_CNT_A_CFG_VALUE_V 0x0000FFFFU
|
||||
#define BITSCRAMBLER_TX_CNT_A_CFG_VALUE_S 0
|
||||
/** BITSCRAMBLER_TX_CNT_B_CFG_VALUE : R/W; bitpos: [31:16]; default: 0;
|
||||
* config the rx counter b value
|
||||
*/
|
||||
#define BITSCRAMBLER_TX_CNT_B_CFG_VALUE 0x0000FFFFU
|
||||
#define BITSCRAMBLER_TX_CNT_B_CFG_VALUE_M (BITSCRAMBLER_TX_CNT_B_CFG_VALUE_V << BITSCRAMBLER_TX_CNT_B_CFG_VALUE_S)
|
||||
#define BITSCRAMBLER_TX_CNT_B_CFG_VALUE_V 0x0000FFFFU
|
||||
#define BITSCRAMBLER_TX_CNT_B_CFG_VALUE_S 16
|
||||
|
||||
/** BITSCRAMBLER_TX_CNT_STATE_REG register
|
||||
* TX Counter state registers
|
||||
*/
|
||||
#define BITSCRAMBLER_TX_CNT_STATE_REG (DR_REG_BITSCRAMBLER_BASE + 0x40)
|
||||
/** BITSCRAMBLER_RX_CNT_A_VALUE : RO; bitpos: [15:0]; default: 0;
|
||||
* read the tx counter a value
|
||||
*/
|
||||
#define BITSCRAMBLER_RX_CNT_A_VALUE 0x0000FFFFU
|
||||
#define BITSCRAMBLER_RX_CNT_A_VALUE_M (BITSCRAMBLER_RX_CNT_A_VALUE_V << BITSCRAMBLER_RX_CNT_A_VALUE_S)
|
||||
#define BITSCRAMBLER_RX_CNT_A_VALUE_V 0x0000FFFFU
|
||||
#define BITSCRAMBLER_RX_CNT_A_VALUE_S 0
|
||||
/** BITSCRAMBLER_RX_CNT_B_VALUE : RO; bitpos: [31:16]; default: 0;
|
||||
* read the tx counter b value
|
||||
*/
|
||||
#define BITSCRAMBLER_RX_CNT_B_VALUE 0x0000FFFFU
|
||||
#define BITSCRAMBLER_RX_CNT_B_VALUE_M (BITSCRAMBLER_RX_CNT_B_VALUE_V << BITSCRAMBLER_RX_CNT_B_VALUE_S)
|
||||
#define BITSCRAMBLER_RX_CNT_B_VALUE_V 0x0000FFFFU
|
||||
#define BITSCRAMBLER_RX_CNT_B_VALUE_S 16
|
||||
|
||||
/** BITSCRAMBLER_RX_CNT_STATE_REG register
|
||||
* RX Counter state registers
|
||||
*/
|
||||
#define BITSCRAMBLER_RX_CNT_STATE_REG (DR_REG_BITSCRAMBLER_BASE + 0x44)
|
||||
/** BITSCRAMBLER_TX_CNT_A_VALUE : RO; bitpos: [15:0]; default: 0;
|
||||
* read the rx counter a value
|
||||
*/
|
||||
#define BITSCRAMBLER_TX_CNT_A_VALUE 0x0000FFFFU
|
||||
#define BITSCRAMBLER_TX_CNT_A_VALUE_M (BITSCRAMBLER_TX_CNT_A_VALUE_V << BITSCRAMBLER_TX_CNT_A_VALUE_S)
|
||||
#define BITSCRAMBLER_TX_CNT_A_VALUE_V 0x0000FFFFU
|
||||
#define BITSCRAMBLER_TX_CNT_A_VALUE_S 0
|
||||
/** BITSCRAMBLER_TX_CNT_B_VALUE : RO; bitpos: [31:16]; default: 0;
|
||||
* read the rx counter b value
|
||||
*/
|
||||
#define BITSCRAMBLER_TX_CNT_B_VALUE 0x0000FFFFU
|
||||
#define BITSCRAMBLER_TX_CNT_B_VALUE_M (BITSCRAMBLER_TX_CNT_B_VALUE_V << BITSCRAMBLER_TX_CNT_B_VALUE_S)
|
||||
#define BITSCRAMBLER_TX_CNT_B_VALUE_V 0x0000FFFFU
|
||||
#define BITSCRAMBLER_TX_CNT_B_VALUE_S 16
|
||||
|
||||
/** BITSCRAMBLER_SYS_REG register
|
||||
* Control and configuration registers
|
||||
*/
|
||||
#define BITSCRAMBLER_SYS_REG (DR_REG_BITSCRAMBLER_BASE + 0xf8)
|
||||
/** BITSCRAMBLER_LOOP_MODE : R/W; bitpos: [0]; default: 0;
|
||||
* write this bit to set the bitscrambler tx loop back to DMA rx
|
||||
*/
|
||||
#define BITSCRAMBLER_LOOP_MODE (BIT(0))
|
||||
#define BITSCRAMBLER_LOOP_MODE_M (BITSCRAMBLER_LOOP_MODE_V << BITSCRAMBLER_LOOP_MODE_S)
|
||||
#define BITSCRAMBLER_LOOP_MODE_V 0x00000001U
|
||||
#define BITSCRAMBLER_LOOP_MODE_S 0
|
||||
/** BITSCRAMBLER_CLK_EN : R/W; bitpos: [31]; default: 0;
|
||||
* Write this bit to enable the configuration register clock to be always-on. 0: turn
|
||||
* on during access, 1: always-on.
|
||||
*/
|
||||
#define BITSCRAMBLER_CLK_EN (BIT(31))
|
||||
#define BITSCRAMBLER_CLK_EN_M (BITSCRAMBLER_CLK_EN_V << BITSCRAMBLER_CLK_EN_S)
|
||||
#define BITSCRAMBLER_CLK_EN_V 0x00000001U
|
||||
#define BITSCRAMBLER_CLK_EN_S 31
|
||||
|
||||
/** BITSCRAMBLER_VERSION_REG register
|
||||
* Control and configuration registers
|
||||
*/
|
||||
#define BITSCRAMBLER_VERSION_REG (DR_REG_BITSCRAMBLER_BASE + 0xfc)
|
||||
/** BITSCRAMBLER_BITSCRAMBLER_VER : R/W; bitpos: [27:0]; default: 38801776;
|
||||
* Reserved
|
||||
*/
|
||||
#define BITSCRAMBLER_BITSCRAMBLER_VER 0x0FFFFFFFU
|
||||
#define BITSCRAMBLER_BITSCRAMBLER_VER_M (BITSCRAMBLER_BITSCRAMBLER_VER_V << BITSCRAMBLER_BITSCRAMBLER_VER_S)
|
||||
#define BITSCRAMBLER_BITSCRAMBLER_VER_V 0x0FFFFFFFU
|
||||
#define BITSCRAMBLER_BITSCRAMBLER_VER_S 0
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
525
components/soc/esp32s31/register/soc/bitscrambler_struct.h
Normal file
525
components/soc/esp32s31/register/soc/bitscrambler_struct.h
Normal file
@@ -0,0 +1,525 @@
|
||||
/**
|
||||
* SPDX-FileCopyrightText: 2025 Espressif Systems (Shanghai) CO LTD
|
||||
*
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
*/
|
||||
#pragma once
|
||||
|
||||
#include <stdint.h>
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
/** Group: Control and configuration registers */
|
||||
/** Type of tx_inst_cfg0 register
|
||||
* Control and configuration registers
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** tx_inst_idx : R/W; bitpos: [2:0]; default: 0;
|
||||
* write this bits to specify the one of 8 instruction
|
||||
*/
|
||||
uint32_t tx_inst_idx:3;
|
||||
/** tx_inst_pos : R/W; bitpos: [6:3]; default: 0;
|
||||
* write this bits to specify the bit position of 257 bit instruction which in units
|
||||
* of 32 bits
|
||||
*/
|
||||
uint32_t tx_inst_pos:4;
|
||||
uint32_t reserved_7:25;
|
||||
};
|
||||
uint32_t val;
|
||||
} bitscrambler_tx_inst_cfg0_reg_t;
|
||||
|
||||
/** Type of tx_inst_cfg1 register
|
||||
* Control and configuration registers
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** tx_inst : R/W; bitpos: [31:0]; default: 4;
|
||||
* write this bits to update instruction which specified by
|
||||
* BITSCRAMBLER_TX_INST_CFG0_REG, Read this bits to get instruction which specified by
|
||||
* BITSCRAMBLER_TX_INST_CFG0_REG
|
||||
*/
|
||||
uint32_t tx_inst:32;
|
||||
};
|
||||
uint32_t val;
|
||||
} bitscrambler_tx_inst_cfg1_reg_t;
|
||||
|
||||
/** Type of rx_inst_cfg0 register
|
||||
* Control and configuration registers
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** rx_inst_idx : R/W; bitpos: [2:0]; default: 0;
|
||||
* write this bits to specify the one of 8 instruction
|
||||
*/
|
||||
uint32_t rx_inst_idx:3;
|
||||
/** rx_inst_pos : R/W; bitpos: [6:3]; default: 0;
|
||||
* write this bits to specify the bit position of 257 bit instruction which in units
|
||||
* of 32 bits
|
||||
*/
|
||||
uint32_t rx_inst_pos:4;
|
||||
uint32_t reserved_7:25;
|
||||
};
|
||||
uint32_t val;
|
||||
} bitscrambler_rx_inst_cfg0_reg_t;
|
||||
|
||||
/** Type of rx_inst_cfg1 register
|
||||
* Control and configuration registers
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** rx_inst : R/W; bitpos: [31:0]; default: 12;
|
||||
* write this bits to update instruction which specified by
|
||||
* BITSCRAMBLER_RX_INST_CFG0_REG, Read this bits to get instruction which specified by
|
||||
* BITSCRAMBLER_RX_INST_CFG0_REG
|
||||
*/
|
||||
uint32_t rx_inst:32;
|
||||
};
|
||||
uint32_t val;
|
||||
} bitscrambler_rx_inst_cfg1_reg_t;
|
||||
|
||||
/** Type of tx_lut_cfg0 register
|
||||
* Control and configuration registers
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** tx_lut_idx : R/W; bitpos: [10:0]; default: 0;
|
||||
* write this bits to specify the bytes position of LUT RAM based on
|
||||
* reg_bitscrambler_tx_lut_mode
|
||||
*/
|
||||
uint32_t tx_lut_idx:11;
|
||||
/** tx_lut_mode : R/W; bitpos: [12:11]; default: 0;
|
||||
* write this bits to specify the bytes mode of LUT RAM, 0: 1 byte,1: 2bytes, 2: 4
|
||||
* bytes
|
||||
*/
|
||||
uint32_t tx_lut_mode:2;
|
||||
uint32_t reserved_13:19;
|
||||
};
|
||||
uint32_t val;
|
||||
} bitscrambler_tx_lut_cfg0_reg_t;
|
||||
|
||||
/** Type of tx_lut_cfg1 register
|
||||
* Control and configuration registers
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** tx_lut : R/W; bitpos: [31:0]; default: 20;
|
||||
* write this bits to update LUT which specified by BITSCRAMBLER_TX_LUT_CFG0_REG, Read
|
||||
* this bits to get LUT which specified by BITSCRAMBLER_TX_LUT_CFG0_REG
|
||||
*/
|
||||
uint32_t tx_lut:32;
|
||||
};
|
||||
uint32_t val;
|
||||
} bitscrambler_tx_lut_cfg1_reg_t;
|
||||
|
||||
/** Type of rx_lut_cfg0 register
|
||||
* Control and configuration registers
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** rx_lut_idx : R/W; bitpos: [10:0]; default: 0;
|
||||
* write this bits to specify the bytes position of LUT RAM based on
|
||||
* reg_bitscrambler_rx_lut_mode
|
||||
*/
|
||||
uint32_t rx_lut_idx:11;
|
||||
/** rx_lut_mode : R/W; bitpos: [12:11]; default: 0;
|
||||
* write this bits to specify the bytes mode of LUT RAM, 0: 1 byte,1: 2bytes, 2: 4
|
||||
* bytes
|
||||
*/
|
||||
uint32_t rx_lut_mode:2;
|
||||
uint32_t reserved_13:19;
|
||||
};
|
||||
uint32_t val;
|
||||
} bitscrambler_rx_lut_cfg0_reg_t;
|
||||
|
||||
/** Type of rx_lut_cfg1 register
|
||||
* Control and configuration registers
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** rx_lut : R/W; bitpos: [31:0]; default: 28;
|
||||
* write this bits to update LUT which specified by BITSCRAMBLER_RX_LUT_CFG0_REG, Read
|
||||
* this bits to get LUT which specified by BITSCRAMBLER_RX_LUT_CFG0_REG
|
||||
*/
|
||||
uint32_t rx_lut:32;
|
||||
};
|
||||
uint32_t val;
|
||||
} bitscrambler_rx_lut_cfg1_reg_t;
|
||||
|
||||
|
||||
/** Group: Configuration registers */
|
||||
/** Type of tx_tailing_bits register
|
||||
* Control and configuration registers
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** tx_tailing_bits : R/W; bitpos: [15:0]; default: 0;
|
||||
* write this bits to specify the extra data bit length after getting EOF
|
||||
*/
|
||||
uint32_t tx_tailing_bits:16;
|
||||
uint32_t reserved_16:16;
|
||||
};
|
||||
uint32_t val;
|
||||
} bitscrambler_tx_tailing_bits_reg_t;
|
||||
|
||||
/** Type of rx_tailing_bits register
|
||||
* Control and configuration registers
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** rx_tailing_bits : R/W; bitpos: [15:0]; default: 0;
|
||||
* write this bits to specify the extra data bit length after getting EOF
|
||||
*/
|
||||
uint32_t rx_tailing_bits:16;
|
||||
uint32_t reserved_16:16;
|
||||
};
|
||||
uint32_t val;
|
||||
} bitscrambler_rx_tailing_bits_reg_t;
|
||||
|
||||
/** Type of tx_ctrl register
|
||||
* Control and configuration registers
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** tx_ena : R/W; bitpos: [0]; default: 0;
|
||||
* write this bit to enable the bitscrambler tx
|
||||
*/
|
||||
uint32_t tx_ena:1;
|
||||
/** tx_pause : R/W; bitpos: [1]; default: 0;
|
||||
* write this bit to pause the bitscrambler tx core
|
||||
*/
|
||||
uint32_t tx_pause:1;
|
||||
/** tx_halt : R/W; bitpos: [2]; default: 1;
|
||||
* write this bit to halt the bitscrambler tx core
|
||||
*/
|
||||
uint32_t tx_halt:1;
|
||||
/** tx_eof_mode : R/W; bitpos: [3]; default: 0;
|
||||
* write this bit to ser the bitscrambler tx core EOF signal generating mode which is
|
||||
* combined with reg_bitscrambler_tx_tailing_bits, 0: counter by read dma fifo, 0
|
||||
* counter by write peripheral buffer
|
||||
*/
|
||||
uint32_t tx_eof_mode:1;
|
||||
/** tx_cond_mode : R/W; bitpos: [4]; default: 0;
|
||||
* write this bit to specify the LOOP instruction condition mode of bitscrambler tx
|
||||
* core, 0: use the little than operator to get the condition, 1: use not equal
|
||||
* operator to get the condition
|
||||
*/
|
||||
uint32_t tx_cond_mode:1;
|
||||
/** tx_fetch_mode : R/W; bitpos: [5]; default: 0;
|
||||
* write this bit to set the bitscrambler tx core fetch instruction mode, 0: prefetch
|
||||
* by reset, 1: fetch by instructions
|
||||
*/
|
||||
uint32_t tx_fetch_mode:1;
|
||||
/** tx_halt_mode : R/W; bitpos: [6]; default: 0;
|
||||
* write this bit to set the bitscrambler tx core halt mode when tx_halt is set, 0:
|
||||
* wait write data back done, , 1: ignore write data back
|
||||
*/
|
||||
uint32_t tx_halt_mode:1;
|
||||
/** tx_rd_dummy : R/W; bitpos: [7]; default: 0;
|
||||
* write this bit to set the bitscrambler tx core read data mode when EOF received.0:
|
||||
* wait read data, 1: ignore read data
|
||||
*/
|
||||
uint32_t tx_rd_dummy:1;
|
||||
/** tx_fifo_rst : WT; bitpos: [8]; default: 0;
|
||||
* write this bit to reset the bitscrambler tx fifo
|
||||
*/
|
||||
uint32_t tx_fifo_rst:1;
|
||||
uint32_t reserved_9:23;
|
||||
};
|
||||
uint32_t val;
|
||||
} bitscrambler_tx_ctrl_reg_t;
|
||||
|
||||
/** Type of rx_ctrl register
|
||||
* Control and configuration registers
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** rx_ena : R/W; bitpos: [0]; default: 0;
|
||||
* write this bit to enable the bitscrambler rx
|
||||
*/
|
||||
uint32_t rx_ena:1;
|
||||
/** rx_pause : R/W; bitpos: [1]; default: 0;
|
||||
* write this bit to pause the bitscrambler rx core
|
||||
*/
|
||||
uint32_t rx_pause:1;
|
||||
/** rx_halt : R/W; bitpos: [2]; default: 1;
|
||||
* write this bit to halt the bitscrambler rx core
|
||||
*/
|
||||
uint32_t rx_halt:1;
|
||||
/** rx_eof_mode : R/W; bitpos: [3]; default: 0;
|
||||
* write this bit to ser the bitscrambler rx core EOF signal generating mode which is
|
||||
* combined with reg_bitscrambler_rx_tailing_bits, 0: counter by read peripheral
|
||||
* buffer, 0 counter by write dma fifo
|
||||
*/
|
||||
uint32_t rx_eof_mode:1;
|
||||
/** rx_cond_mode : R/W; bitpos: [4]; default: 0;
|
||||
* write this bit to specify the LOOP instruction condition mode of bitscrambler rx
|
||||
* core, 0: use the little than operator to get the condition, 1: use not equal
|
||||
* operator to get the condition
|
||||
*/
|
||||
uint32_t rx_cond_mode:1;
|
||||
/** rx_fetch_mode : R/W; bitpos: [5]; default: 0;
|
||||
* write this bit to set the bitscrambler rx core fetch instruction mode, 0: prefetch
|
||||
* by reset, 1: fetch by instructions
|
||||
*/
|
||||
uint32_t rx_fetch_mode:1;
|
||||
/** rx_halt_mode : R/W; bitpos: [6]; default: 0;
|
||||
* write this bit to set the bitscrambler rx core halt mode when rx_halt is set, 0:
|
||||
* wait write data back done, , 1: ignore write data back
|
||||
*/
|
||||
uint32_t rx_halt_mode:1;
|
||||
/** rx_rd_dummy : R/W; bitpos: [7]; default: 0;
|
||||
* write this bit to set the bitscrambler rx core read data mode when EOF received.0:
|
||||
* wait read data, 1: ignore read data
|
||||
*/
|
||||
uint32_t rx_rd_dummy:1;
|
||||
/** rx_fifo_rst : WT; bitpos: [8]; default: 0;
|
||||
* write this bit to reset the bitscrambler rx fifo
|
||||
*/
|
||||
uint32_t rx_fifo_rst:1;
|
||||
uint32_t reserved_9:23;
|
||||
};
|
||||
uint32_t val;
|
||||
} bitscrambler_rx_ctrl_reg_t;
|
||||
|
||||
/** Type of sys register
|
||||
* Control and configuration registers
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** loop_mode : R/W; bitpos: [0]; default: 0;
|
||||
* write this bit to set the bitscrambler tx loop back to DMA rx
|
||||
*/
|
||||
uint32_t loop_mode:1;
|
||||
uint32_t reserved_1:30;
|
||||
/** clk_en : R/W; bitpos: [31]; default: 0;
|
||||
* Write this bit to enable the configuration register clock to be always-on. 0: turn
|
||||
* on during access, 1: always-on.
|
||||
*/
|
||||
uint32_t clk_en:1;
|
||||
};
|
||||
uint32_t val;
|
||||
} bitscrambler_sys_reg_t;
|
||||
|
||||
|
||||
/** Group: Status registers */
|
||||
/** Type of tx_state register
|
||||
* Status registers
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** tx_in_idle : RO; bitpos: [0]; default: 1;
|
||||
* represents the bitscrambler tx core in halt mode
|
||||
*/
|
||||
uint32_t tx_in_idle:1;
|
||||
/** tx_in_run : RO; bitpos: [1]; default: 0;
|
||||
* represents the bitscrambler tx core in run mode
|
||||
*/
|
||||
uint32_t tx_in_run:1;
|
||||
/** tx_in_wait : RO; bitpos: [2]; default: 0;
|
||||
* represents the bitscrambler tx core in wait mode to wait write back done
|
||||
*/
|
||||
uint32_t tx_in_wait:1;
|
||||
/** tx_in_pause : RO; bitpos: [3]; default: 0;
|
||||
* represents the bitscrambler tx core in pause mode
|
||||
*/
|
||||
uint32_t tx_in_pause:1;
|
||||
/** tx_fifo_empty : RO; bitpos: [4]; default: 1;
|
||||
* represents the bitscrambler tx fifo in empty state
|
||||
*/
|
||||
uint32_t tx_fifo_empty:1;
|
||||
/** tx_crc_rdy : RO; bitpos: [5]; default: 0;
|
||||
* represents the crc calculate result of bitscrambler tx path is ready
|
||||
*/
|
||||
uint32_t tx_crc_rdy:1;
|
||||
uint32_t reserved_6:10;
|
||||
/** tx_eof_get_cnt : RO; bitpos: [29:16]; default: 0;
|
||||
* represents the bytes numbers of bitscrambler tx core when get EOF
|
||||
*/
|
||||
uint32_t tx_eof_get_cnt:14;
|
||||
/** tx_eof_overload : RO; bitpos: [30]; default: 0;
|
||||
* represents the some EOFs will be lost for bitscrambler tx core
|
||||
*/
|
||||
uint32_t tx_eof_overload:1;
|
||||
/** tx_eof_trace_clr : WT; bitpos: [31]; default: 0;
|
||||
* write this bit to clear reg_bitscrambler_tx_eof_overload and
|
||||
* reg_bitscrambler_tx_eof_get_cnt registers
|
||||
*/
|
||||
uint32_t tx_eof_trace_clr:1;
|
||||
};
|
||||
uint32_t val;
|
||||
} bitscrambler_tx_state_reg_t;
|
||||
|
||||
/** Type of rx_state register
|
||||
* Status registers
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** rx_in_idle : RO; bitpos: [0]; default: 1;
|
||||
* represents the bitscrambler rx core in halt mode
|
||||
*/
|
||||
uint32_t rx_in_idle:1;
|
||||
/** rx_in_run : RO; bitpos: [1]; default: 0;
|
||||
* represents the bitscrambler rx core in run mode
|
||||
*/
|
||||
uint32_t rx_in_run:1;
|
||||
/** rx_in_wait : RO; bitpos: [2]; default: 0;
|
||||
* represents the bitscrambler rx core in wait mode to wait write back done
|
||||
*/
|
||||
uint32_t rx_in_wait:1;
|
||||
/** rx_in_pause : RO; bitpos: [3]; default: 0;
|
||||
* represents the bitscrambler rx core in pause mode
|
||||
*/
|
||||
uint32_t rx_in_pause:1;
|
||||
/** rx_fifo_full : RO; bitpos: [4]; default: 0;
|
||||
* represents the bitscrambler rx fifo in full state
|
||||
*/
|
||||
uint32_t rx_fifo_full:1;
|
||||
/** rx_crc_rdy : RO; bitpos: [5]; default: 0;
|
||||
* represents the crc calculate result of bitscrambler rx path is ready
|
||||
*/
|
||||
uint32_t rx_crc_rdy:1;
|
||||
uint32_t reserved_6:10;
|
||||
/** rx_eof_get_cnt : RO; bitpos: [29:16]; default: 0;
|
||||
* represents the bytes numbers of bitscrambler rx core when get EOF
|
||||
*/
|
||||
uint32_t rx_eof_get_cnt:14;
|
||||
/** rx_eof_overload : RO; bitpos: [30]; default: 0;
|
||||
* represents the some EOFs will be lost for bitscrambler rx core
|
||||
*/
|
||||
uint32_t rx_eof_overload:1;
|
||||
/** rx_eof_trace_clr : WT; bitpos: [31]; default: 0;
|
||||
* write this bit to clear reg_bitscrambler_rx_eof_overload and
|
||||
* reg_bitscrambler_rx_eof_get_cnt registers
|
||||
*/
|
||||
uint32_t rx_eof_trace_clr:1;
|
||||
};
|
||||
uint32_t val;
|
||||
} bitscrambler_rx_state_reg_t;
|
||||
|
||||
|
||||
/** Group: RX Counter cfg registers */
|
||||
/** Type of tx_cnt_cfg register
|
||||
* TX Counter cfg registers
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** rx_cnt_a_cfg_value : R/W; bitpos: [15:0]; default: 0;
|
||||
* config the tx counter a value
|
||||
*/
|
||||
uint32_t rx_cnt_a_cfg_value:16;
|
||||
/** rx_cnt_b_cfg_value : R/W; bitpos: [31:16]; default: 0;
|
||||
* config the tx counter b value
|
||||
*/
|
||||
uint32_t rx_cnt_b_cfg_value:16;
|
||||
};
|
||||
uint32_t val;
|
||||
} bitscrambler_tx_cnt_cfg_reg_t;
|
||||
|
||||
|
||||
/** Group: TX_Counter cfg registers */
|
||||
/** Type of rx_cnt_cfg register
|
||||
* RX Counter cfg registers
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** tx_cnt_a_cfg_value : R/W; bitpos: [15:0]; default: 0;
|
||||
* config the rx counter a value
|
||||
*/
|
||||
uint32_t tx_cnt_a_cfg_value:16;
|
||||
/** tx_cnt_b_cfg_value : R/W; bitpos: [31:16]; default: 0;
|
||||
* config the rx counter b value
|
||||
*/
|
||||
uint32_t tx_cnt_b_cfg_value:16;
|
||||
};
|
||||
uint32_t val;
|
||||
} bitscrambler_rx_cnt_cfg_reg_t;
|
||||
|
||||
|
||||
/** Group: RX Counter status registers */
|
||||
/** Type of tx_cnt_state register
|
||||
* TX Counter state registers
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** rx_cnt_a_value : RO; bitpos: [15:0]; default: 0;
|
||||
* read the tx counter a value
|
||||
*/
|
||||
uint32_t rx_cnt_a_value:16;
|
||||
/** rx_cnt_b_value : RO; bitpos: [31:16]; default: 0;
|
||||
* read the tx counter b value
|
||||
*/
|
||||
uint32_t rx_cnt_b_value:16;
|
||||
};
|
||||
uint32_t val;
|
||||
} bitscrambler_tx_cnt_state_reg_t;
|
||||
|
||||
|
||||
/** Group: TX_Counter status registers */
|
||||
/** Type of rx_cnt_state register
|
||||
* RX Counter state registers
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** tx_cnt_a_value : RO; bitpos: [15:0]; default: 0;
|
||||
* read the rx counter a value
|
||||
*/
|
||||
uint32_t tx_cnt_a_value:16;
|
||||
/** tx_cnt_b_value : RO; bitpos: [31:16]; default: 0;
|
||||
* read the rx counter b value
|
||||
*/
|
||||
uint32_t tx_cnt_b_value:16;
|
||||
};
|
||||
uint32_t val;
|
||||
} bitscrambler_rx_cnt_state_reg_t;
|
||||
|
||||
|
||||
/** Group: Version register */
|
||||
/** Type of version register
|
||||
* Control and configuration registers
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** bitscrambler_ver : R/W; bitpos: [27:0]; default: 38801776;
|
||||
* Reserved
|
||||
*/
|
||||
uint32_t bitscrambler_ver:28;
|
||||
uint32_t reserved_28:4;
|
||||
};
|
||||
uint32_t val;
|
||||
} bitscrambler_version_reg_t;
|
||||
|
||||
|
||||
typedef struct {
|
||||
volatile bitscrambler_tx_inst_cfg0_reg_t tx_inst_cfg0;
|
||||
volatile bitscrambler_tx_inst_cfg1_reg_t tx_inst_cfg1;
|
||||
volatile bitscrambler_rx_inst_cfg0_reg_t rx_inst_cfg0;
|
||||
volatile bitscrambler_rx_inst_cfg1_reg_t rx_inst_cfg1;
|
||||
volatile bitscrambler_tx_lut_cfg0_reg_t tx_lut_cfg0;
|
||||
volatile bitscrambler_tx_lut_cfg1_reg_t tx_lut_cfg1;
|
||||
volatile bitscrambler_rx_lut_cfg0_reg_t rx_lut_cfg0;
|
||||
volatile bitscrambler_rx_lut_cfg1_reg_t rx_lut_cfg1;
|
||||
volatile bitscrambler_tx_tailing_bits_reg_t tx_tailing_bits;
|
||||
volatile bitscrambler_rx_tailing_bits_reg_t rx_tailing_bits;
|
||||
volatile bitscrambler_tx_ctrl_reg_t tx_ctrl;
|
||||
volatile bitscrambler_rx_ctrl_reg_t rx_ctrl;
|
||||
volatile bitscrambler_tx_state_reg_t tx_state;
|
||||
volatile bitscrambler_rx_state_reg_t rx_state;
|
||||
volatile bitscrambler_tx_cnt_cfg_reg_t tx_cnt_cfg;
|
||||
volatile bitscrambler_rx_cnt_cfg_reg_t rx_cnt_cfg;
|
||||
volatile bitscrambler_tx_cnt_state_reg_t tx_cnt_state;
|
||||
volatile bitscrambler_rx_cnt_state_reg_t rx_cnt_state;
|
||||
uint32_t reserved_048[44];
|
||||
volatile bitscrambler_sys_reg_t sys;
|
||||
volatile bitscrambler_version_reg_t version;
|
||||
} bitscrambler_dev_t;
|
||||
|
||||
|
||||
#ifndef __cplusplus
|
||||
_Static_assert(sizeof(bitscrambler_dev_t) == 0x100, "Invalid size of bitscrambler_dev_t structure");
|
||||
#endif
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
1389
components/soc/esp32s31/register/soc/bus_monitor_reg.h
Normal file
1389
components/soc/esp32s31/register/soc/bus_monitor_reg.h
Normal file
File diff suppressed because it is too large
Load Diff
1333
components/soc/esp32s31/register/soc/bus_monitor_struct.h
Normal file
1333
components/soc/esp32s31/register/soc/bus_monitor_struct.h
Normal file
File diff suppressed because it is too large
Load Diff
6982
components/soc/esp32s31/register/soc/cache_reg.h
Normal file
6982
components/soc/esp32s31/register/soc/cache_reg.h
Normal file
File diff suppressed because it is too large
Load Diff
6274
components/soc/esp32s31/register/soc/cache_struct.h
Normal file
6274
components/soc/esp32s31/register/soc/cache_struct.h
Normal file
File diff suppressed because it is too large
Load Diff
1510
components/soc/esp32s31/register/soc/cnnt_io_mux_reg.h
Normal file
1510
components/soc/esp32s31/register/soc/cnnt_io_mux_reg.h
Normal file
File diff suppressed because it is too large
Load Diff
1179
components/soc/esp32s31/register/soc/cnnt_io_mux_struct.h
Normal file
1179
components/soc/esp32s31/register/soc/cnnt_io_mux_struct.h
Normal file
File diff suppressed because it is too large
Load Diff
667
components/soc/esp32s31/register/soc/cnnt_sys_reg.h
Normal file
667
components/soc/esp32s31/register/soc/cnnt_sys_reg.h
Normal file
@@ -0,0 +1,667 @@
|
||||
/**
|
||||
* SPDX-FileCopyrightText: 2025 Espressif Systems (Shanghai) CO LTD
|
||||
*
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
*/
|
||||
#pragma once
|
||||
|
||||
#include <stdint.h>
|
||||
#include "soc/soc.h"
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
/** CNNT_SYS_VER_DATE_REG register
|
||||
* NA
|
||||
*/
|
||||
#define CNNT_SYS_VER_DATE_REG (DR_REG_CNNT_BASE + 0x0)
|
||||
/** CNNT_SYS_VER_DATE : R/W; bitpos: [31:0]; default: 539298086;
|
||||
* NA
|
||||
*/
|
||||
#define CNNT_SYS_VER_DATE 0xFFFFFFFFU
|
||||
#define CNNT_SYS_VER_DATE_M (CNNT_SYS_VER_DATE_V << CNNT_SYS_VER_DATE_S)
|
||||
#define CNNT_SYS_VER_DATE_V 0xFFFFFFFFU
|
||||
#define CNNT_SYS_VER_DATE_S 0
|
||||
|
||||
/** CNNT_CLK_EN_REG register
|
||||
* NA
|
||||
*/
|
||||
#define CNNT_CLK_EN_REG (DR_REG_CNNT_BASE + 0x4)
|
||||
/** CNNT_SYS_DATE : R/W; bitpos: [30:0]; default: 38826240;
|
||||
* need_des
|
||||
*/
|
||||
#define CNNT_SYS_DATE 0x7FFFFFFFU
|
||||
#define CNNT_SYS_DATE_M (CNNT_SYS_DATE_V << CNNT_SYS_DATE_S)
|
||||
#define CNNT_SYS_DATE_V 0x7FFFFFFFU
|
||||
#define CNNT_SYS_DATE_S 0
|
||||
/** CNNT_SYS_CLK_EN : R/W; bitpos: [31]; default: 0;
|
||||
* NA
|
||||
*/
|
||||
#define CNNT_SYS_CLK_EN (BIT(31))
|
||||
#define CNNT_SYS_CLK_EN_M (CNNT_SYS_CLK_EN_V << CNNT_SYS_CLK_EN_S)
|
||||
#define CNNT_SYS_CLK_EN_V 0x00000001U
|
||||
#define CNNT_SYS_CLK_EN_S 31
|
||||
|
||||
/** CNNT_SYS_SDMMC_MEM_LP_CTRL_REG register
|
||||
* HP CORE0 & HP CORE1 memory power control register
|
||||
*/
|
||||
#define CNNT_SYS_SDMMC_MEM_LP_CTRL_REG (DR_REG_CNNT_BASE + 0x10)
|
||||
/** CNNT_SYS_SDMMC_MEM_LP_MODE : R/W; bitpos: [1:0]; default: 2;
|
||||
* Configures sdmmc memory low power mode in low power stage.
|
||||
* 0: deep sleep
|
||||
* 1: light sleep
|
||||
* 2(default): shut down
|
||||
* 3: disable low power stage
|
||||
*/
|
||||
#define CNNT_SYS_SDMMC_MEM_LP_MODE 0x00000003U
|
||||
#define CNNT_SYS_SDMMC_MEM_LP_MODE_M (CNNT_SYS_SDMMC_MEM_LP_MODE_V << CNNT_SYS_SDMMC_MEM_LP_MODE_S)
|
||||
#define CNNT_SYS_SDMMC_MEM_LP_MODE_V 0x00000003U
|
||||
#define CNNT_SYS_SDMMC_MEM_LP_MODE_S 0
|
||||
/** CNNT_SYS_SDMMC_MEM_LP_EN : R/W; bitpos: [2]; default: 1;
|
||||
* Set this bit to power down sdmmc memory.
|
||||
*/
|
||||
#define CNNT_SYS_SDMMC_MEM_LP_EN (BIT(2))
|
||||
#define CNNT_SYS_SDMMC_MEM_LP_EN_M (CNNT_SYS_SDMMC_MEM_LP_EN_V << CNNT_SYS_SDMMC_MEM_LP_EN_S)
|
||||
#define CNNT_SYS_SDMMC_MEM_LP_EN_V 0x00000001U
|
||||
#define CNNT_SYS_SDMMC_MEM_LP_EN_S 2
|
||||
/** CNNT_SYS_SDMMC_MEM_LP_FORCE_CTRL : R/W; bitpos: [3]; default: 0;
|
||||
* Set this bit to force software control sdmmc memory, disable hardware control.
|
||||
*/
|
||||
#define CNNT_SYS_SDMMC_MEM_LP_FORCE_CTRL (BIT(3))
|
||||
#define CNNT_SYS_SDMMC_MEM_LP_FORCE_CTRL_M (CNNT_SYS_SDMMC_MEM_LP_FORCE_CTRL_V << CNNT_SYS_SDMMC_MEM_LP_FORCE_CTRL_S)
|
||||
#define CNNT_SYS_SDMMC_MEM_LP_FORCE_CTRL_V 0x00000001U
|
||||
#define CNNT_SYS_SDMMC_MEM_LP_FORCE_CTRL_S 3
|
||||
|
||||
/** CNNT_SYS_USB_OTGHS_MEM_LP_CTRL_REG register
|
||||
* HP CORE0 & HP CORE1 memory power control register
|
||||
*/
|
||||
#define CNNT_SYS_USB_OTGHS_MEM_LP_CTRL_REG (DR_REG_CNNT_BASE + 0x14)
|
||||
/** CNNT_SYS_USB_OTGHS_MEM_LP_MODE : R/W; bitpos: [1:0]; default: 2;
|
||||
* Configures usb_otghs memory low power mode in low power stage.
|
||||
* 0: deep sleep
|
||||
* 1: light sleep
|
||||
* 2(default): shut down
|
||||
* 3: disable low power stage
|
||||
*/
|
||||
#define CNNT_SYS_USB_OTGHS_MEM_LP_MODE 0x00000003U
|
||||
#define CNNT_SYS_USB_OTGHS_MEM_LP_MODE_M (CNNT_SYS_USB_OTGHS_MEM_LP_MODE_V << CNNT_SYS_USB_OTGHS_MEM_LP_MODE_S)
|
||||
#define CNNT_SYS_USB_OTGHS_MEM_LP_MODE_V 0x00000003U
|
||||
#define CNNT_SYS_USB_OTGHS_MEM_LP_MODE_S 0
|
||||
/** CNNT_SYS_USB_OTGHS_MEM_LP_EN : R/W; bitpos: [2]; default: 0;
|
||||
* Set this bit to power down usb_otghs memory.
|
||||
*/
|
||||
#define CNNT_SYS_USB_OTGHS_MEM_LP_EN (BIT(2))
|
||||
#define CNNT_SYS_USB_OTGHS_MEM_LP_EN_M (CNNT_SYS_USB_OTGHS_MEM_LP_EN_V << CNNT_SYS_USB_OTGHS_MEM_LP_EN_S)
|
||||
#define CNNT_SYS_USB_OTGHS_MEM_LP_EN_V 0x00000001U
|
||||
#define CNNT_SYS_USB_OTGHS_MEM_LP_EN_S 2
|
||||
/** CNNT_SYS_USB_OTGHS_MEM_LP_FORCE_CTRL : R/W; bitpos: [3]; default: 0;
|
||||
* Set this bit to force software control usb_otghs memory, disable hardware control.
|
||||
*/
|
||||
#define CNNT_SYS_USB_OTGHS_MEM_LP_FORCE_CTRL (BIT(3))
|
||||
#define CNNT_SYS_USB_OTGHS_MEM_LP_FORCE_CTRL_M (CNNT_SYS_USB_OTGHS_MEM_LP_FORCE_CTRL_V << CNNT_SYS_USB_OTGHS_MEM_LP_FORCE_CTRL_S)
|
||||
#define CNNT_SYS_USB_OTGHS_MEM_LP_FORCE_CTRL_V 0x00000001U
|
||||
#define CNNT_SYS_USB_OTGHS_MEM_LP_FORCE_CTRL_S 3
|
||||
|
||||
/** CNNT_SYS_USB_DEVICE_MEM_LP_CTRL_REG register
|
||||
* HP CORE0 & HP CORE1 memory power control register
|
||||
*/
|
||||
#define CNNT_SYS_USB_DEVICE_MEM_LP_CTRL_REG (DR_REG_CNNT_BASE + 0x18)
|
||||
/** CNNT_SYS_USB_DEVICE_MEM_LP_MODE : R/W; bitpos: [1:0]; default: 2;
|
||||
* Configures usb_device memory low power mode in low power stage.
|
||||
* 0: deep sleep
|
||||
* 1: light sleep
|
||||
* 2(default): shut down
|
||||
* 3: disable low power stage
|
||||
*/
|
||||
#define CNNT_SYS_USB_DEVICE_MEM_LP_MODE 0x00000003U
|
||||
#define CNNT_SYS_USB_DEVICE_MEM_LP_MODE_M (CNNT_SYS_USB_DEVICE_MEM_LP_MODE_V << CNNT_SYS_USB_DEVICE_MEM_LP_MODE_S)
|
||||
#define CNNT_SYS_USB_DEVICE_MEM_LP_MODE_V 0x00000003U
|
||||
#define CNNT_SYS_USB_DEVICE_MEM_LP_MODE_S 0
|
||||
/** CNNT_SYS_USB_DEVICE_MEM_LP_EN : R/W; bitpos: [2]; default: 0;
|
||||
* Set this bit to power down usb_device memory.
|
||||
*/
|
||||
#define CNNT_SYS_USB_DEVICE_MEM_LP_EN (BIT(2))
|
||||
#define CNNT_SYS_USB_DEVICE_MEM_LP_EN_M (CNNT_SYS_USB_DEVICE_MEM_LP_EN_V << CNNT_SYS_USB_DEVICE_MEM_LP_EN_S)
|
||||
#define CNNT_SYS_USB_DEVICE_MEM_LP_EN_V 0x00000001U
|
||||
#define CNNT_SYS_USB_DEVICE_MEM_LP_EN_S 2
|
||||
/** CNNT_SYS_USB_DEVICE_MEM_LP_FORCE_CTRL : R/W; bitpos: [3]; default: 0;
|
||||
* Set this bit to force software control usb_device (serial jtag) memory, disable
|
||||
* hardware control.
|
||||
*/
|
||||
#define CNNT_SYS_USB_DEVICE_MEM_LP_FORCE_CTRL (BIT(3))
|
||||
#define CNNT_SYS_USB_DEVICE_MEM_LP_FORCE_CTRL_M (CNNT_SYS_USB_DEVICE_MEM_LP_FORCE_CTRL_V << CNNT_SYS_USB_DEVICE_MEM_LP_FORCE_CTRL_S)
|
||||
#define CNNT_SYS_USB_DEVICE_MEM_LP_FORCE_CTRL_V 0x00000001U
|
||||
#define CNNT_SYS_USB_DEVICE_MEM_LP_FORCE_CTRL_S 3
|
||||
|
||||
/** CNNT_SYS_GMAC_MEM_LP_CTRL_REG register
|
||||
* HP CORE0 & HP CORE1 memory power control register
|
||||
*/
|
||||
#define CNNT_SYS_GMAC_MEM_LP_CTRL_REG (DR_REG_CNNT_BASE + 0x1c)
|
||||
/** CNNT_SYS_GMAC_MEM_LP_MODE : R/W; bitpos: [1:0]; default: 2;
|
||||
* Configures gmac memory low power mode in low power stage.
|
||||
* 0: deep sleep
|
||||
* 1: light sleep
|
||||
* 2(default): shut down
|
||||
* 3: disable low power stage
|
||||
*/
|
||||
#define CNNT_SYS_GMAC_MEM_LP_MODE 0x00000003U
|
||||
#define CNNT_SYS_GMAC_MEM_LP_MODE_M (CNNT_SYS_GMAC_MEM_LP_MODE_V << CNNT_SYS_GMAC_MEM_LP_MODE_S)
|
||||
#define CNNT_SYS_GMAC_MEM_LP_MODE_V 0x00000003U
|
||||
#define CNNT_SYS_GMAC_MEM_LP_MODE_S 0
|
||||
/** CNNT_SYS_GMAC_MEM_LP_EN : R/W; bitpos: [2]; default: 1;
|
||||
* Set this bit to power down gmac memory.
|
||||
*/
|
||||
#define CNNT_SYS_GMAC_MEM_LP_EN (BIT(2))
|
||||
#define CNNT_SYS_GMAC_MEM_LP_EN_M (CNNT_SYS_GMAC_MEM_LP_EN_V << CNNT_SYS_GMAC_MEM_LP_EN_S)
|
||||
#define CNNT_SYS_GMAC_MEM_LP_EN_V 0x00000001U
|
||||
#define CNNT_SYS_GMAC_MEM_LP_EN_S 2
|
||||
/** CNNT_SYS_GMAC_MEM_LP_FORCE_CTRL : R/W; bitpos: [3]; default: 0;
|
||||
* Set this bit to force software control gmac memory, disable hardware control.
|
||||
*/
|
||||
#define CNNT_SYS_GMAC_MEM_LP_FORCE_CTRL (BIT(3))
|
||||
#define CNNT_SYS_GMAC_MEM_LP_FORCE_CTRL_M (CNNT_SYS_GMAC_MEM_LP_FORCE_CTRL_V << CNNT_SYS_GMAC_MEM_LP_FORCE_CTRL_S)
|
||||
#define CNNT_SYS_GMAC_MEM_LP_FORCE_CTRL_V 0x00000001U
|
||||
#define CNNT_SYS_GMAC_MEM_LP_FORCE_CTRL_S 3
|
||||
|
||||
/** CNNT_SYS_SPRF_MEM_AUX_CTRL_REG register
|
||||
* need_des
|
||||
*/
|
||||
#define CNNT_SYS_SPRF_MEM_AUX_CTRL_REG (DR_REG_CNNT_BASE + 0x20)
|
||||
/** CNNT_SYS_SPRF_MEM_AUX_CTRL : R/W; bitpos: [31:0]; default: 8304;
|
||||
* need_des
|
||||
*/
|
||||
#define CNNT_SYS_SPRF_MEM_AUX_CTRL 0xFFFFFFFFU
|
||||
#define CNNT_SYS_SPRF_MEM_AUX_CTRL_M (CNNT_SYS_SPRF_MEM_AUX_CTRL_V << CNNT_SYS_SPRF_MEM_AUX_CTRL_S)
|
||||
#define CNNT_SYS_SPRF_MEM_AUX_CTRL_V 0xFFFFFFFFU
|
||||
#define CNNT_SYS_SPRF_MEM_AUX_CTRL_S 0
|
||||
|
||||
/** CNNT_SYS_SDPRF_MEM_AUX_CTRL_REG register
|
||||
* need_des
|
||||
*/
|
||||
#define CNNT_SYS_SDPRF_MEM_AUX_CTRL_REG (DR_REG_CNNT_BASE + 0x24)
|
||||
/** CNNT_SYS_SDPRF_MEM_AUX_CTRL : R/W; bitpos: [31:0]; default: 8304;
|
||||
* need_des
|
||||
*/
|
||||
#define CNNT_SYS_SDPRF_MEM_AUX_CTRL 0xFFFFFFFFU
|
||||
#define CNNT_SYS_SDPRF_MEM_AUX_CTRL_M (CNNT_SYS_SDPRF_MEM_AUX_CTRL_V << CNNT_SYS_SDPRF_MEM_AUX_CTRL_S)
|
||||
#define CNNT_SYS_SDPRF_MEM_AUX_CTRL_V 0xFFFFFFFFU
|
||||
#define CNNT_SYS_SDPRF_MEM_AUX_CTRL_S 0
|
||||
|
||||
/** CNNT_SYS_HP_PAD_ULPI_CTRL_REG register
|
||||
* HP Clock Control Register.
|
||||
*/
|
||||
#define CNNT_SYS_HP_PAD_ULPI_CTRL_REG (DR_REG_CNNT_BASE + 0x28)
|
||||
/** CNNT_SYS_HP_PAD_ULPI_CLK_OUT_INV_EN : R/W; bitpos: [30]; default: 0;
|
||||
* PAD ULPI Clock output inv Enable, valid only when CNNT_SYS_HP_PAD_ULPI_CLK_OUT_EN
|
||||
* is 1.
|
||||
*/
|
||||
#define CNNT_SYS_HP_PAD_ULPI_CLK_OUT_INV_EN (BIT(30))
|
||||
#define CNNT_SYS_HP_PAD_ULPI_CLK_OUT_INV_EN_M (CNNT_SYS_HP_PAD_ULPI_CLK_OUT_INV_EN_V << CNNT_SYS_HP_PAD_ULPI_CLK_OUT_INV_EN_S)
|
||||
#define CNNT_SYS_HP_PAD_ULPI_CLK_OUT_INV_EN_V 0x00000001U
|
||||
#define CNNT_SYS_HP_PAD_ULPI_CLK_OUT_INV_EN_S 30
|
||||
/** CNNT_SYS_HP_PAD_ULPI_CLK_OUT_EN : R/W; bitpos: [31]; default: 0;
|
||||
* PAD ULPI Clock output Enable. 0: pad_ulpi_clk is used as input clk, 1: pad_ulpi_clk
|
||||
* is used as output clk
|
||||
*/
|
||||
#define CNNT_SYS_HP_PAD_ULPI_CLK_OUT_EN (BIT(31))
|
||||
#define CNNT_SYS_HP_PAD_ULPI_CLK_OUT_EN_M (CNNT_SYS_HP_PAD_ULPI_CLK_OUT_EN_V << CNNT_SYS_HP_PAD_ULPI_CLK_OUT_EN_S)
|
||||
#define CNNT_SYS_HP_PAD_ULPI_CLK_OUT_EN_V 0x00000001U
|
||||
#define CNNT_SYS_HP_PAD_ULPI_CLK_OUT_EN_S 31
|
||||
|
||||
/** CNNT_SYS_USB_CLK_CTRL_REG register
|
||||
* HP USB Clock Reset Control Register.
|
||||
*/
|
||||
#define CNNT_SYS_USB_CLK_CTRL_REG (DR_REG_CNNT_BASE + 0x2c)
|
||||
/** CNNT_SYS_USB_48M_DIV_NUM : R/W; bitpos: [15:8]; default: 9;
|
||||
* usb 480m to 25m divide number.
|
||||
*/
|
||||
#define CNNT_SYS_USB_48M_DIV_NUM 0x000000FFU
|
||||
#define CNNT_SYS_USB_48M_DIV_NUM_M (CNNT_SYS_USB_48M_DIV_NUM_V << CNNT_SYS_USB_48M_DIV_NUM_S)
|
||||
#define CNNT_SYS_USB_48M_DIV_NUM_V 0x000000FFU
|
||||
#define CNNT_SYS_USB_48M_DIV_NUM_S 8
|
||||
/** CNNT_SYS_USB_25M_DIV_NUM : R/W; bitpos: [23:16]; default: 19;
|
||||
* usb 500m to 25m divide number.
|
||||
*/
|
||||
#define CNNT_SYS_USB_25M_DIV_NUM 0x000000FFU
|
||||
#define CNNT_SYS_USB_25M_DIV_NUM_M (CNNT_SYS_USB_25M_DIV_NUM_V << CNNT_SYS_USB_25M_DIV_NUM_S)
|
||||
#define CNNT_SYS_USB_25M_DIV_NUM_V 0x000000FFU
|
||||
#define CNNT_SYS_USB_25M_DIV_NUM_S 16
|
||||
/** CNNT_SYS_USB_12M_DIV_NUM : R/W; bitpos: [31:24]; default: 39;
|
||||
* usb 480m to 12m divide number.
|
||||
*/
|
||||
#define CNNT_SYS_USB_12M_DIV_NUM 0x000000FFU
|
||||
#define CNNT_SYS_USB_12M_DIV_NUM_M (CNNT_SYS_USB_12M_DIV_NUM_V << CNNT_SYS_USB_12M_DIV_NUM_S)
|
||||
#define CNNT_SYS_USB_12M_DIV_NUM_V 0x000000FFU
|
||||
#define CNNT_SYS_USB_12M_DIV_NUM_S 24
|
||||
|
||||
/** CNNT_SYS_USB_OTG20_CTRL_REG register
|
||||
* HP USB Clock Reset Control Register.
|
||||
*/
|
||||
#define CNNT_SYS_USB_OTG20_CTRL_REG (DR_REG_CNNT_BASE + 0x30)
|
||||
/** CNNT_SYS_USB_OTG20_UTMIFS_CLK_EN : R/W; bitpos: [23]; default: 1;
|
||||
* usb otg20 utmifs clk enable.
|
||||
*/
|
||||
#define CNNT_SYS_USB_OTG20_UTMIFS_CLK_EN (BIT(23))
|
||||
#define CNNT_SYS_USB_OTG20_UTMIFS_CLK_EN_M (CNNT_SYS_USB_OTG20_UTMIFS_CLK_EN_V << CNNT_SYS_USB_OTG20_UTMIFS_CLK_EN_S)
|
||||
#define CNNT_SYS_USB_OTG20_UTMIFS_CLK_EN_V 0x00000001U
|
||||
#define CNNT_SYS_USB_OTG20_UTMIFS_CLK_EN_S 23
|
||||
/** CNNT_SYS_USB_OTG20_ULPI_CLK_EN : R/W; bitpos: [24]; default: 0;
|
||||
* usb otg20 ulpi clk enable.
|
||||
*/
|
||||
#define CNNT_SYS_USB_OTG20_ULPI_CLK_EN (BIT(24))
|
||||
#define CNNT_SYS_USB_OTG20_ULPI_CLK_EN_M (CNNT_SYS_USB_OTG20_ULPI_CLK_EN_V << CNNT_SYS_USB_OTG20_ULPI_CLK_EN_S)
|
||||
#define CNNT_SYS_USB_OTG20_ULPI_CLK_EN_V 0x00000001U
|
||||
#define CNNT_SYS_USB_OTG20_ULPI_CLK_EN_S 24
|
||||
/** CNNT_SYS_USB_OTG20_PHYREF_CLK_SRC_SEL : R/W; bitpos: [26:25]; default: 0;
|
||||
* usb otg20 hs phy src sel. 2''d0: 12m, 2''d1: 25m, 2''d2: pad_hsphy_refclk.'
|
||||
*/
|
||||
#define CNNT_SYS_USB_OTG20_PHYREF_CLK_SRC_SEL 0x00000003U
|
||||
#define CNNT_SYS_USB_OTG20_PHYREF_CLK_SRC_SEL_M (CNNT_SYS_USB_OTG20_PHYREF_CLK_SRC_SEL_V << CNNT_SYS_USB_OTG20_PHYREF_CLK_SRC_SEL_S)
|
||||
#define CNNT_SYS_USB_OTG20_PHYREF_CLK_SRC_SEL_V 0x00000003U
|
||||
#define CNNT_SYS_USB_OTG20_PHYREF_CLK_SRC_SEL_S 25
|
||||
/** CNNT_SYS_USB_OTG20_PHYREF_CLK_EN : R/W; bitpos: [27]; default: 0;
|
||||
* usb otg20 hs phy refclk enable.
|
||||
*/
|
||||
#define CNNT_SYS_USB_OTG20_PHYREF_CLK_EN (BIT(27))
|
||||
#define CNNT_SYS_USB_OTG20_PHYREF_CLK_EN_M (CNNT_SYS_USB_OTG20_PHYREF_CLK_EN_V << CNNT_SYS_USB_OTG20_PHYREF_CLK_EN_S)
|
||||
#define CNNT_SYS_USB_OTG20_PHYREF_CLK_EN_V 0x00000001U
|
||||
#define CNNT_SYS_USB_OTG20_PHYREF_CLK_EN_S 27
|
||||
/** CNNT_SYS_USB_OTG20_PHY_RST_EN : R/W; bitpos: [29]; default: 1;
|
||||
* usb otg20 phy reset en
|
||||
*/
|
||||
#define CNNT_SYS_USB_OTG20_PHY_RST_EN (BIT(29))
|
||||
#define CNNT_SYS_USB_OTG20_PHY_RST_EN_M (CNNT_SYS_USB_OTG20_PHY_RST_EN_V << CNNT_SYS_USB_OTG20_PHY_RST_EN_S)
|
||||
#define CNNT_SYS_USB_OTG20_PHY_RST_EN_V 0x00000001U
|
||||
#define CNNT_SYS_USB_OTG20_PHY_RST_EN_S 29
|
||||
/** CNNT_SYS_USB_OTG20_AHB_RST_EN : R/W; bitpos: [30]; default: 1;
|
||||
* usb otg20 ahb reset en
|
||||
*/
|
||||
#define CNNT_SYS_USB_OTG20_AHB_RST_EN (BIT(30))
|
||||
#define CNNT_SYS_USB_OTG20_AHB_RST_EN_M (CNNT_SYS_USB_OTG20_AHB_RST_EN_V << CNNT_SYS_USB_OTG20_AHB_RST_EN_S)
|
||||
#define CNNT_SYS_USB_OTG20_AHB_RST_EN_V 0x00000001U
|
||||
#define CNNT_SYS_USB_OTG20_AHB_RST_EN_S 30
|
||||
/** CNNT_SYS_USB_OTG20_APB_RST_EN : R/W; bitpos: [31]; default: 1;
|
||||
* usb otg20 apb reset en
|
||||
*/
|
||||
#define CNNT_SYS_USB_OTG20_APB_RST_EN (BIT(31))
|
||||
#define CNNT_SYS_USB_OTG20_APB_RST_EN_M (CNNT_SYS_USB_OTG20_APB_RST_EN_V << CNNT_SYS_USB_OTG20_APB_RST_EN_S)
|
||||
#define CNNT_SYS_USB_OTG20_APB_RST_EN_V 0x00000001U
|
||||
#define CNNT_SYS_USB_OTG20_APB_RST_EN_S 31
|
||||
|
||||
/** CNNT_SYS_HP_USB_DEVICE_CTRL_REG register
|
||||
* HP USB Clock Reset Control Register.
|
||||
*/
|
||||
#define CNNT_SYS_HP_USB_DEVICE_CTRL_REG (DR_REG_CNNT_BASE + 0x34)
|
||||
/** CNNT_SYS_USB_DEVICE_48M_CLK_EN : R/W; bitpos: [30]; default: 1;
|
||||
* usb device fs phy clock enable.
|
||||
*/
|
||||
#define CNNT_SYS_USB_DEVICE_48M_CLK_EN (BIT(30))
|
||||
#define CNNT_SYS_USB_DEVICE_48M_CLK_EN_M (CNNT_SYS_USB_DEVICE_48M_CLK_EN_V << CNNT_SYS_USB_DEVICE_48M_CLK_EN_S)
|
||||
#define CNNT_SYS_USB_DEVICE_48M_CLK_EN_V 0x00000001U
|
||||
#define CNNT_SYS_USB_DEVICE_48M_CLK_EN_S 30
|
||||
/** CNNT_SYS_USB_DEVICE_RST_EN : R/W; bitpos: [31]; default: 0;
|
||||
* usb device reset en
|
||||
*/
|
||||
#define CNNT_SYS_USB_DEVICE_RST_EN (BIT(31))
|
||||
#define CNNT_SYS_USB_DEVICE_RST_EN_M (CNNT_SYS_USB_DEVICE_RST_EN_V << CNNT_SYS_USB_DEVICE_RST_EN_S)
|
||||
#define CNNT_SYS_USB_DEVICE_RST_EN_V 0x00000001U
|
||||
#define CNNT_SYS_USB_DEVICE_RST_EN_S 31
|
||||
|
||||
/** CNNT_SYS_HP_SDMMC_CTRL_REG register
|
||||
* need_des
|
||||
*/
|
||||
#define CNNT_SYS_HP_SDMMC_CTRL_REG (DR_REG_CNNT_BASE + 0x38)
|
||||
/** CNNT_SYS_SDMMC_AHB2AXI_POST_WRITE_EN : R/W; bitpos: [29]; default: 0;
|
||||
* this reg is used to enable the post_write function of the ahb2axi bridge for sdmmc
|
||||
*/
|
||||
#define CNNT_SYS_SDMMC_AHB2AXI_POST_WRITE_EN (BIT(29))
|
||||
#define CNNT_SYS_SDMMC_AHB2AXI_POST_WRITE_EN_M (CNNT_SYS_SDMMC_AHB2AXI_POST_WRITE_EN_V << CNNT_SYS_SDMMC_AHB2AXI_POST_WRITE_EN_S)
|
||||
#define CNNT_SYS_SDMMC_AHB2AXI_POST_WRITE_EN_V 0x00000001U
|
||||
#define CNNT_SYS_SDMMC_AHB2AXI_POST_WRITE_EN_S 29
|
||||
/** CNNT_SYS_SDMMC_RST_EN : R/W; bitpos: [30]; default: 0;
|
||||
* hp sdmmc reset en
|
||||
*/
|
||||
#define CNNT_SYS_SDMMC_RST_EN (BIT(30))
|
||||
#define CNNT_SYS_SDMMC_RST_EN_M (CNNT_SYS_SDMMC_RST_EN_V << CNNT_SYS_SDMMC_RST_EN_S)
|
||||
#define CNNT_SYS_SDMMC_RST_EN_V 0x00000001U
|
||||
#define CNNT_SYS_SDMMC_RST_EN_S 30
|
||||
/** CNNT_SYS_SDMMC_FORCE_NORST : R/W; bitpos: [31]; default: 0;
|
||||
* hp sdmmc force norst
|
||||
*/
|
||||
#define CNNT_SYS_SDMMC_FORCE_NORST (BIT(31))
|
||||
#define CNNT_SYS_SDMMC_FORCE_NORST_M (CNNT_SYS_SDMMC_FORCE_NORST_V << CNNT_SYS_SDMMC_FORCE_NORST_S)
|
||||
#define CNNT_SYS_SDMMC_FORCE_NORST_V 0x00000001U
|
||||
#define CNNT_SYS_SDMMC_FORCE_NORST_S 31
|
||||
|
||||
/** CNNT_SYS_HP_EMAC_CTRL_REG register
|
||||
* need_des
|
||||
*/
|
||||
#define CNNT_SYS_HP_EMAC_CTRL_REG (DR_REG_CNNT_BASE + 0x3c)
|
||||
/** CNNT_SYS_EMAC_USELESS_CLK_EN : R/W; bitpos: [0]; default: 0;
|
||||
* need_des
|
||||
*/
|
||||
#define CNNT_SYS_EMAC_USELESS_CLK_EN (BIT(0))
|
||||
#define CNNT_SYS_EMAC_USELESS_CLK_EN_M (CNNT_SYS_EMAC_USELESS_CLK_EN_V << CNNT_SYS_EMAC_USELESS_CLK_EN_S)
|
||||
#define CNNT_SYS_EMAC_USELESS_CLK_EN_V 0x00000001U
|
||||
#define CNNT_SYS_EMAC_USELESS_CLK_EN_S 0
|
||||
/** CNNT_SYS_EMAC_RST_EN : R/W; bitpos: [1]; default: 0;
|
||||
* need_des
|
||||
*/
|
||||
#define CNNT_SYS_EMAC_RST_EN (BIT(1))
|
||||
#define CNNT_SYS_EMAC_RST_EN_M (CNNT_SYS_EMAC_RST_EN_V << CNNT_SYS_EMAC_RST_EN_S)
|
||||
#define CNNT_SYS_EMAC_RST_EN_V 0x00000001U
|
||||
#define CNNT_SYS_EMAC_RST_EN_S 1
|
||||
/** CNNT_SYS_EMAC_FORCE_NORST : R/W; bitpos: [2]; default: 0;
|
||||
* need_des
|
||||
*/
|
||||
#define CNNT_SYS_EMAC_FORCE_NORST (BIT(2))
|
||||
#define CNNT_SYS_EMAC_FORCE_NORST_M (CNNT_SYS_EMAC_FORCE_NORST_V << CNNT_SYS_EMAC_FORCE_NORST_S)
|
||||
#define CNNT_SYS_EMAC_FORCE_NORST_V 0x00000001U
|
||||
#define CNNT_SYS_EMAC_FORCE_NORST_S 2
|
||||
|
||||
/** CNNT_SYS_HP_EMAC_REF_CTRL_REG register
|
||||
* need_des
|
||||
*/
|
||||
#define CNNT_SYS_HP_EMAC_REF_CTRL_REG (DR_REG_CNNT_BASE + 0x40)
|
||||
/** CNNT_SYS_EMAC_REF_CLK_SEL : R/W; bitpos: [1:0]; default: 0;
|
||||
* select emac reference clock source. 0: mpll 500MHz, 1: cpll 300MHz.
|
||||
*/
|
||||
#define CNNT_SYS_EMAC_REF_CLK_SEL 0x00000003U
|
||||
#define CNNT_SYS_EMAC_REF_CLK_SEL_M (CNNT_SYS_EMAC_REF_CLK_SEL_V << CNNT_SYS_EMAC_REF_CLK_SEL_S)
|
||||
#define CNNT_SYS_EMAC_REF_CLK_SEL_V 0x00000003U
|
||||
#define CNNT_SYS_EMAC_REF_CLK_SEL_S 0
|
||||
/** CNNT_SYS_EMAC_REF_CLK_EN : R/W; bitpos: [2]; default: 0;
|
||||
* Set as 1 to enable emac reference clock source selection
|
||||
*/
|
||||
#define CNNT_SYS_EMAC_REF_CLK_EN (BIT(2))
|
||||
#define CNNT_SYS_EMAC_REF_CLK_EN_M (CNNT_SYS_EMAC_REF_CLK_EN_V << CNNT_SYS_EMAC_REF_CLK_EN_S)
|
||||
#define CNNT_SYS_EMAC_REF_CLK_EN_V 0x00000001U
|
||||
#define CNNT_SYS_EMAC_REF_CLK_EN_S 2
|
||||
/** CNNT_SYS_EMAC_REF_50M_PAD_OUT_CLK_EN : R/W; bitpos: [3]; default: 0;
|
||||
* need_des
|
||||
*/
|
||||
#define CNNT_SYS_EMAC_REF_50M_PAD_OUT_CLK_EN (BIT(3))
|
||||
#define CNNT_SYS_EMAC_REF_50M_PAD_OUT_CLK_EN_M (CNNT_SYS_EMAC_REF_50M_PAD_OUT_CLK_EN_V << CNNT_SYS_EMAC_REF_50M_PAD_OUT_CLK_EN_S)
|
||||
#define CNNT_SYS_EMAC_REF_50M_PAD_OUT_CLK_EN_V 0x00000001U
|
||||
#define CNNT_SYS_EMAC_REF_50M_PAD_OUT_CLK_EN_S 3
|
||||
/** CNNT_SYS_EMAC_REF_CLK_DIV_NUM : R/W; bitpos: [15:8]; default: 0;
|
||||
* Divide number of the divider which is used to divide reference clock source.
|
||||
*/
|
||||
#define CNNT_SYS_EMAC_REF_CLK_DIV_NUM 0x000000FFU
|
||||
#define CNNT_SYS_EMAC_REF_CLK_DIV_NUM_M (CNNT_SYS_EMAC_REF_CLK_DIV_NUM_V << CNNT_SYS_EMAC_REF_CLK_DIV_NUM_S)
|
||||
#define CNNT_SYS_EMAC_REF_CLK_DIV_NUM_V 0x000000FFU
|
||||
#define CNNT_SYS_EMAC_REF_CLK_DIV_NUM_S 8
|
||||
|
||||
/** CNNT_SYS_HP_EMAC_RMII_PAD_CTRL_REG register
|
||||
* need_des
|
||||
*/
|
||||
#define CNNT_SYS_HP_EMAC_RMII_PAD_CTRL_REG (DR_REG_CNNT_BASE + 0x44)
|
||||
/** CNNT_SYS_EMAC_RMII_PAD_CLK_EN : R/W; bitpos: [1]; default: 0;
|
||||
* need_des
|
||||
*/
|
||||
#define CNNT_SYS_EMAC_RMII_PAD_CLK_EN (BIT(1))
|
||||
#define CNNT_SYS_EMAC_RMII_PAD_CLK_EN_M (CNNT_SYS_EMAC_RMII_PAD_CLK_EN_V << CNNT_SYS_EMAC_RMII_PAD_CLK_EN_S)
|
||||
#define CNNT_SYS_EMAC_RMII_PAD_CLK_EN_V 0x00000001U
|
||||
#define CNNT_SYS_EMAC_RMII_PAD_CLK_EN_S 1
|
||||
/** CNNT_SYS_EMAC_RMII_PAD_CLK_INV_EN : R/W; bitpos: [2]; default: 0;
|
||||
* need_des
|
||||
*/
|
||||
#define CNNT_SYS_EMAC_RMII_PAD_CLK_INV_EN (BIT(2))
|
||||
#define CNNT_SYS_EMAC_RMII_PAD_CLK_INV_EN_M (CNNT_SYS_EMAC_RMII_PAD_CLK_INV_EN_V << CNNT_SYS_EMAC_RMII_PAD_CLK_INV_EN_S)
|
||||
#define CNNT_SYS_EMAC_RMII_PAD_CLK_INV_EN_V 0x00000001U
|
||||
#define CNNT_SYS_EMAC_RMII_PAD_CLK_INV_EN_S 2
|
||||
|
||||
/** CNNT_SYS_HP_EMAC_RMII_CTRL_REG register
|
||||
* need_des
|
||||
*/
|
||||
#define CNNT_SYS_HP_EMAC_RMII_CTRL_REG (DR_REG_CNNT_BASE + 0x48)
|
||||
/** CNNT_SYS_EMAC_RMII_CLK_SEL : R/W; bitpos: [0]; default: 0;
|
||||
* need_des
|
||||
*/
|
||||
#define CNNT_SYS_EMAC_RMII_CLK_SEL (BIT(0))
|
||||
#define CNNT_SYS_EMAC_RMII_CLK_SEL_M (CNNT_SYS_EMAC_RMII_CLK_SEL_V << CNNT_SYS_EMAC_RMII_CLK_SEL_S)
|
||||
#define CNNT_SYS_EMAC_RMII_CLK_SEL_V 0x00000001U
|
||||
#define CNNT_SYS_EMAC_RMII_CLK_SEL_S 0
|
||||
/** CNNT_SYS_EMAC_RMII_CLK_EN : R/W; bitpos: [1]; default: 0;
|
||||
* need_des
|
||||
*/
|
||||
#define CNNT_SYS_EMAC_RMII_CLK_EN (BIT(1))
|
||||
#define CNNT_SYS_EMAC_RMII_CLK_EN_M (CNNT_SYS_EMAC_RMII_CLK_EN_V << CNNT_SYS_EMAC_RMII_CLK_EN_S)
|
||||
#define CNNT_SYS_EMAC_RMII_CLK_EN_V 0x00000001U
|
||||
#define CNNT_SYS_EMAC_RMII_CLK_EN_S 1
|
||||
/** CNNT_SYS_EMAC_RMII_PAD_OUT_CLK_EN : R/W; bitpos: [2]; default: 0;
|
||||
* need_des
|
||||
*/
|
||||
#define CNNT_SYS_EMAC_RMII_PAD_OUT_CLK_EN (BIT(2))
|
||||
#define CNNT_SYS_EMAC_RMII_PAD_OUT_CLK_EN_M (CNNT_SYS_EMAC_RMII_PAD_OUT_CLK_EN_V << CNNT_SYS_EMAC_RMII_PAD_OUT_CLK_EN_S)
|
||||
#define CNNT_SYS_EMAC_RMII_PAD_OUT_CLK_EN_V 0x00000001U
|
||||
#define CNNT_SYS_EMAC_RMII_PAD_OUT_CLK_EN_S 2
|
||||
/** CNNT_SYS_EMAC_RXTX_CLK_DIV_NUM : R/W; bitpos: [12:8]; default: 0;
|
||||
* need_des
|
||||
*/
|
||||
#define CNNT_SYS_EMAC_RXTX_CLK_DIV_NUM 0x0000001FU
|
||||
#define CNNT_SYS_EMAC_RXTX_CLK_DIV_NUM_M (CNNT_SYS_EMAC_RXTX_CLK_DIV_NUM_V << CNNT_SYS_EMAC_RXTX_CLK_DIV_NUM_S)
|
||||
#define CNNT_SYS_EMAC_RXTX_CLK_DIV_NUM_V 0x0000001FU
|
||||
#define CNNT_SYS_EMAC_RXTX_CLK_DIV_NUM_S 8
|
||||
|
||||
/** CNNT_SYS_HP_EMAC_RX_CTRL_REG register
|
||||
* need_des
|
||||
*/
|
||||
#define CNNT_SYS_HP_EMAC_RX_CTRL_REG (DR_REG_CNNT_BASE + 0x4c)
|
||||
/** CNNT_SYS_EMAC_RX_PAD_CLK_EN : R/W; bitpos: [0]; default: 0;
|
||||
* need_des
|
||||
*/
|
||||
#define CNNT_SYS_EMAC_RX_PAD_CLK_EN (BIT(0))
|
||||
#define CNNT_SYS_EMAC_RX_PAD_CLK_EN_M (CNNT_SYS_EMAC_RX_PAD_CLK_EN_V << CNNT_SYS_EMAC_RX_PAD_CLK_EN_S)
|
||||
#define CNNT_SYS_EMAC_RX_PAD_CLK_EN_V 0x00000001U
|
||||
#define CNNT_SYS_EMAC_RX_PAD_CLK_EN_S 0
|
||||
/** CNNT_SYS_EMAC_RX_PAD_CLK_INV_EN : R/W; bitpos: [1]; default: 0;
|
||||
* need_des
|
||||
*/
|
||||
#define CNNT_SYS_EMAC_RX_PAD_CLK_INV_EN (BIT(1))
|
||||
#define CNNT_SYS_EMAC_RX_PAD_CLK_INV_EN_M (CNNT_SYS_EMAC_RX_PAD_CLK_INV_EN_V << CNNT_SYS_EMAC_RX_PAD_CLK_INV_EN_S)
|
||||
#define CNNT_SYS_EMAC_RX_PAD_CLK_INV_EN_V 0x00000001U
|
||||
#define CNNT_SYS_EMAC_RX_PAD_CLK_INV_EN_S 1
|
||||
/** CNNT_SYS_EMAC_RX_CLK_SEL : R/W; bitpos: [2]; default: 0;
|
||||
* need_des
|
||||
*/
|
||||
#define CNNT_SYS_EMAC_RX_CLK_SEL (BIT(2))
|
||||
#define CNNT_SYS_EMAC_RX_CLK_SEL_M (CNNT_SYS_EMAC_RX_CLK_SEL_V << CNNT_SYS_EMAC_RX_CLK_SEL_S)
|
||||
#define CNNT_SYS_EMAC_RX_CLK_SEL_V 0x00000001U
|
||||
#define CNNT_SYS_EMAC_RX_CLK_SEL_S 2
|
||||
/** CNNT_SYS_EMAC_RX_180_CLK_EN : R/W; bitpos: [3]; default: 0;
|
||||
* need_des
|
||||
*/
|
||||
#define CNNT_SYS_EMAC_RX_180_CLK_EN (BIT(3))
|
||||
#define CNNT_SYS_EMAC_RX_180_CLK_EN_M (CNNT_SYS_EMAC_RX_180_CLK_EN_V << CNNT_SYS_EMAC_RX_180_CLK_EN_S)
|
||||
#define CNNT_SYS_EMAC_RX_180_CLK_EN_V 0x00000001U
|
||||
#define CNNT_SYS_EMAC_RX_180_CLK_EN_S 3
|
||||
|
||||
/** CNNT_SYS_HP_EMAC_TX_CTRL_REG register
|
||||
* need_des
|
||||
*/
|
||||
#define CNNT_SYS_HP_EMAC_TX_CTRL_REG (DR_REG_CNNT_BASE + 0x50)
|
||||
/** CNNT_SYS_EMAC_TX_PAD_CLK_EN : R/W; bitpos: [0]; default: 0;
|
||||
* need_des
|
||||
*/
|
||||
#define CNNT_SYS_EMAC_TX_PAD_CLK_EN (BIT(0))
|
||||
#define CNNT_SYS_EMAC_TX_PAD_CLK_EN_M (CNNT_SYS_EMAC_TX_PAD_CLK_EN_V << CNNT_SYS_EMAC_TX_PAD_CLK_EN_S)
|
||||
#define CNNT_SYS_EMAC_TX_PAD_CLK_EN_V 0x00000001U
|
||||
#define CNNT_SYS_EMAC_TX_PAD_CLK_EN_S 0
|
||||
/** CNNT_SYS_EMAC_TX_PAD_CLK_INV_EN : R/W; bitpos: [1]; default: 0;
|
||||
* need_des
|
||||
*/
|
||||
#define CNNT_SYS_EMAC_TX_PAD_CLK_INV_EN (BIT(1))
|
||||
#define CNNT_SYS_EMAC_TX_PAD_CLK_INV_EN_M (CNNT_SYS_EMAC_TX_PAD_CLK_INV_EN_V << CNNT_SYS_EMAC_TX_PAD_CLK_INV_EN_S)
|
||||
#define CNNT_SYS_EMAC_TX_PAD_CLK_INV_EN_V 0x00000001U
|
||||
#define CNNT_SYS_EMAC_TX_PAD_CLK_INV_EN_S 1
|
||||
/** CNNT_SYS_EMAC_TX_CLK_SEL : R/W; bitpos: [2]; default: 0;
|
||||
* need_des
|
||||
*/
|
||||
#define CNNT_SYS_EMAC_TX_CLK_SEL (BIT(2))
|
||||
#define CNNT_SYS_EMAC_TX_CLK_SEL_M (CNNT_SYS_EMAC_TX_CLK_SEL_V << CNNT_SYS_EMAC_TX_CLK_SEL_S)
|
||||
#define CNNT_SYS_EMAC_TX_CLK_SEL_V 0x00000001U
|
||||
#define CNNT_SYS_EMAC_TX_CLK_SEL_S 2
|
||||
/** CNNT_SYS_EMAC_TX_180_CLK_EN : R/W; bitpos: [3]; default: 0;
|
||||
* need_des
|
||||
*/
|
||||
#define CNNT_SYS_EMAC_TX_180_CLK_EN (BIT(3))
|
||||
#define CNNT_SYS_EMAC_TX_180_CLK_EN_M (CNNT_SYS_EMAC_TX_180_CLK_EN_V << CNNT_SYS_EMAC_TX_180_CLK_EN_S)
|
||||
#define CNNT_SYS_EMAC_TX_180_CLK_EN_V 0x00000001U
|
||||
#define CNNT_SYS_EMAC_TX_180_CLK_EN_S 3
|
||||
|
||||
/** CNNT_SYS_HP_EMAC_PTP_CTRL_REG register
|
||||
* need_des
|
||||
*/
|
||||
#define CNNT_SYS_HP_EMAC_PTP_CTRL_REG (DR_REG_CNNT_BASE + 0x54)
|
||||
/** CNNT_SYS_EMAC_PTP_REF_CLK_EN : R/W; bitpos: [0]; default: 0;
|
||||
* Set as 1 to enable emac PTP clock source selection.
|
||||
*/
|
||||
#define CNNT_SYS_EMAC_PTP_REF_CLK_EN (BIT(0))
|
||||
#define CNNT_SYS_EMAC_PTP_REF_CLK_EN_M (CNNT_SYS_EMAC_PTP_REF_CLK_EN_V << CNNT_SYS_EMAC_PTP_REF_CLK_EN_S)
|
||||
#define CNNT_SYS_EMAC_PTP_REF_CLK_EN_V 0x00000001U
|
||||
#define CNNT_SYS_EMAC_PTP_REF_CLK_EN_S 0
|
||||
/** CNNT_SYS_EMAC_PTP_REF_CLK_SEL : R/W; bitpos: [1]; default: 0;
|
||||
* select emac PTP clock source. 0: xtal clock, 1: 80MHz internal clock.
|
||||
*/
|
||||
#define CNNT_SYS_EMAC_PTP_REF_CLK_SEL (BIT(1))
|
||||
#define CNNT_SYS_EMAC_PTP_REF_CLK_SEL_M (CNNT_SYS_EMAC_PTP_REF_CLK_SEL_V << CNNT_SYS_EMAC_PTP_REF_CLK_SEL_S)
|
||||
#define CNNT_SYS_EMAC_PTP_REF_CLK_SEL_V 0x00000001U
|
||||
#define CNNT_SYS_EMAC_PTP_REF_CLK_SEL_S 1
|
||||
|
||||
/** CNNT_SYS_CNNT_IOMUX_CTRL0_REG register
|
||||
* need_des
|
||||
*/
|
||||
#define CNNT_SYS_CNNT_IOMUX_CTRL0_REG (DR_REG_CNNT_BASE + 0x58)
|
||||
/** CNNT_SYS_REG_CNNT_IOMUX_APB_RST_EN : R/W; bitpos: [0]; default: 0;
|
||||
* cnnt_iomux rst en
|
||||
*/
|
||||
#define CNNT_SYS_REG_CNNT_IOMUX_APB_RST_EN (BIT(0))
|
||||
#define CNNT_SYS_REG_CNNT_IOMUX_APB_RST_EN_M (CNNT_SYS_REG_CNNT_IOMUX_APB_RST_EN_V << CNNT_SYS_REG_CNNT_IOMUX_APB_RST_EN_S)
|
||||
#define CNNT_SYS_REG_CNNT_IOMUX_APB_RST_EN_V 0x00000001U
|
||||
#define CNNT_SYS_REG_CNNT_IOMUX_APB_RST_EN_S 0
|
||||
|
||||
/** CNNT_SYS_SPRAM_MEM_AUX_CTRL_REG register
|
||||
* need_des
|
||||
*/
|
||||
#define CNNT_SYS_SPRAM_MEM_AUX_CTRL_REG (DR_REG_CNNT_BASE + 0x5c)
|
||||
/** CNNT_SYS_SPRAM_MEM_AUX_CTRL : R/W; bitpos: [31:0]; default: 8304;
|
||||
* need_des
|
||||
*/
|
||||
#define CNNT_SYS_SPRAM_MEM_AUX_CTRL 0xFFFFFFFFU
|
||||
#define CNNT_SYS_SPRAM_MEM_AUX_CTRL_M (CNNT_SYS_SPRAM_MEM_AUX_CTRL_V << CNNT_SYS_SPRAM_MEM_AUX_CTRL_S)
|
||||
#define CNNT_SYS_SPRAM_MEM_AUX_CTRL_V 0xFFFFFFFFU
|
||||
#define CNNT_SYS_SPRAM_MEM_AUX_CTRL_S 0
|
||||
|
||||
/** CNNT_SYS_GMAC_CTRL0_REG register
|
||||
* N/A
|
||||
*/
|
||||
#define CNNT_SYS_GMAC_CTRL0_REG (DR_REG_CNNT_BASE + 0x60)
|
||||
/** CNNT_SYS_PTP_PPS : RO; bitpos: [0]; default: 0;
|
||||
* N/A
|
||||
*/
|
||||
#define CNNT_SYS_PTP_PPS (BIT(0))
|
||||
#define CNNT_SYS_PTP_PPS_M (CNNT_SYS_PTP_PPS_V << CNNT_SYS_PTP_PPS_S)
|
||||
#define CNNT_SYS_PTP_PPS_V 0x00000001U
|
||||
#define CNNT_SYS_PTP_PPS_S 0
|
||||
/** CNNT_SYS_SBD_FLOWCTRL : R/W; bitpos: [1]; default: 0;
|
||||
* N/A
|
||||
*/
|
||||
#define CNNT_SYS_SBD_FLOWCTRL (BIT(1))
|
||||
#define CNNT_SYS_SBD_FLOWCTRL_M (CNNT_SYS_SBD_FLOWCTRL_V << CNNT_SYS_SBD_FLOWCTRL_S)
|
||||
#define CNNT_SYS_SBD_FLOWCTRL_V 0x00000001U
|
||||
#define CNNT_SYS_SBD_FLOWCTRL_S 1
|
||||
/** CNNT_SYS_PHY_INTF_SEL : R/W; bitpos: [4:2]; default: 0;
|
||||
* N/A
|
||||
*/
|
||||
#define CNNT_SYS_PHY_INTF_SEL 0x00000007U
|
||||
#define CNNT_SYS_PHY_INTF_SEL_M (CNNT_SYS_PHY_INTF_SEL_V << CNNT_SYS_PHY_INTF_SEL_S)
|
||||
#define CNNT_SYS_PHY_INTF_SEL_V 0x00000007U
|
||||
#define CNNT_SYS_PHY_INTF_SEL_S 2
|
||||
/** CNNT_SYS_GMAC_MEM_CLK_FORCE_ON : R/W; bitpos: [5]; default: 0;
|
||||
* N/A
|
||||
*/
|
||||
#define CNNT_SYS_GMAC_MEM_CLK_FORCE_ON (BIT(5))
|
||||
#define CNNT_SYS_GMAC_MEM_CLK_FORCE_ON_M (CNNT_SYS_GMAC_MEM_CLK_FORCE_ON_V << CNNT_SYS_GMAC_MEM_CLK_FORCE_ON_S)
|
||||
#define CNNT_SYS_GMAC_MEM_CLK_FORCE_ON_V 0x00000001U
|
||||
#define CNNT_SYS_GMAC_MEM_CLK_FORCE_ON_S 5
|
||||
/** CNNT_SYS_GMAC_RST_CLK_TX_N : RO; bitpos: [6]; default: 0;
|
||||
* N/A
|
||||
*/
|
||||
#define CNNT_SYS_GMAC_RST_CLK_TX_N (BIT(6))
|
||||
#define CNNT_SYS_GMAC_RST_CLK_TX_N_M (CNNT_SYS_GMAC_RST_CLK_TX_N_V << CNNT_SYS_GMAC_RST_CLK_TX_N_S)
|
||||
#define CNNT_SYS_GMAC_RST_CLK_TX_N_V 0x00000001U
|
||||
#define CNNT_SYS_GMAC_RST_CLK_TX_N_S 6
|
||||
/** CNNT_SYS_GMAC_RST_CLK_RX_N : RO; bitpos: [7]; default: 0;
|
||||
* N/A
|
||||
*/
|
||||
#define CNNT_SYS_GMAC_RST_CLK_RX_N (BIT(7))
|
||||
#define CNNT_SYS_GMAC_RST_CLK_RX_N_M (CNNT_SYS_GMAC_RST_CLK_RX_N_V << CNNT_SYS_GMAC_RST_CLK_RX_N_S)
|
||||
#define CNNT_SYS_GMAC_RST_CLK_RX_N_V 0x00000001U
|
||||
#define CNNT_SYS_GMAC_RST_CLK_RX_N_S 7
|
||||
/** CNNT_SYS_GMAC_CACTIVE : RO; bitpos: [8]; default: 0;
|
||||
* this signal indicates that the GMAC-AXI requires its clock signal , 1 : required ,0
|
||||
* : not required
|
||||
*/
|
||||
#define CNNT_SYS_GMAC_CACTIVE (BIT(8))
|
||||
#define CNNT_SYS_GMAC_CACTIVE_M (CNNT_SYS_GMAC_CACTIVE_V << CNNT_SYS_GMAC_CACTIVE_S)
|
||||
#define CNNT_SYS_GMAC_CACTIVE_V 0x00000001U
|
||||
#define CNNT_SYS_GMAC_CACTIVE_S 8
|
||||
/** CNNT_SYS_GMAC_CSYSACK : RO; bitpos: [9]; default: 0;
|
||||
* this signal is the acknowledgement from the GMAC-AXI to the system for low-power
|
||||
* request ,active high
|
||||
*/
|
||||
#define CNNT_SYS_GMAC_CSYSACK (BIT(9))
|
||||
#define CNNT_SYS_GMAC_CSYSACK_M (CNNT_SYS_GMAC_CSYSACK_V << CNNT_SYS_GMAC_CSYSACK_S)
|
||||
#define CNNT_SYS_GMAC_CSYSACK_V 0x00000001U
|
||||
#define CNNT_SYS_GMAC_CSYSACK_S 9
|
||||
/** CNNT_SYS_GMAC_CSYSREQ : R/W; bitpos: [10]; default: 0;
|
||||
* clock controller system low-power request , when asserted low ,indicates the
|
||||
* controller hs requested the GMAX-AXI to enter a lowpower state
|
||||
*/
|
||||
#define CNNT_SYS_GMAC_CSYSREQ (BIT(10))
|
||||
#define CNNT_SYS_GMAC_CSYSREQ_M (CNNT_SYS_GMAC_CSYSREQ_V << CNNT_SYS_GMAC_CSYSREQ_S)
|
||||
#define CNNT_SYS_GMAC_CSYSREQ_V 0x00000001U
|
||||
#define CNNT_SYS_GMAC_CSYSREQ_S 10
|
||||
/** CNNT_SYS_GMAC_APB_POSTW_EN : R/W; bitpos: [11]; default: 0;
|
||||
* N/A
|
||||
*/
|
||||
#define CNNT_SYS_GMAC_APB_POSTW_EN (BIT(11))
|
||||
#define CNNT_SYS_GMAC_APB_POSTW_EN_M (CNNT_SYS_GMAC_APB_POSTW_EN_V << CNNT_SYS_GMAC_APB_POSTW_EN_S)
|
||||
#define CNNT_SYS_GMAC_APB_POSTW_EN_V 0x00000001U
|
||||
#define CNNT_SYS_GMAC_APB_POSTW_EN_S 11
|
||||
/** CNNT_SYS_GMAC_MEM_PRDYN : RO; bitpos: [12]; default: 1;
|
||||
* record memory power status
|
||||
*/
|
||||
#define CNNT_SYS_GMAC_MEM_PRDYN (BIT(12))
|
||||
#define CNNT_SYS_GMAC_MEM_PRDYN_M (CNNT_SYS_GMAC_MEM_PRDYN_V << CNNT_SYS_GMAC_MEM_PRDYN_S)
|
||||
#define CNNT_SYS_GMAC_MEM_PRDYN_V 0x00000001U
|
||||
#define CNNT_SYS_GMAC_MEM_PRDYN_S 12
|
||||
|
||||
/** CNNT_SYS_GMAC_CTRL1_REG register
|
||||
* N/A
|
||||
*/
|
||||
#define CNNT_SYS_GMAC_CTRL1_REG (DR_REG_CNNT_BASE + 0x64)
|
||||
/** CNNT_SYS_PTP_TIMESTAMP_L : RO; bitpos: [31:0]; default: 0;
|
||||
* N/A
|
||||
*/
|
||||
#define CNNT_SYS_PTP_TIMESTAMP_L 0xFFFFFFFFU
|
||||
#define CNNT_SYS_PTP_TIMESTAMP_L_M (CNNT_SYS_PTP_TIMESTAMP_L_V << CNNT_SYS_PTP_TIMESTAMP_L_S)
|
||||
#define CNNT_SYS_PTP_TIMESTAMP_L_V 0xFFFFFFFFU
|
||||
#define CNNT_SYS_PTP_TIMESTAMP_L_S 0
|
||||
|
||||
/** CNNT_SYS_GMAC_CTRL2_REG register
|
||||
* N/A
|
||||
*/
|
||||
#define CNNT_SYS_GMAC_CTRL2_REG (DR_REG_CNNT_BASE + 0x68)
|
||||
/** CNNT_SYS_PTP_TIMESTAMP_H : RO; bitpos: [31:0]; default: 0;
|
||||
* N/A
|
||||
*/
|
||||
#define CNNT_SYS_PTP_TIMESTAMP_H 0xFFFFFFFFU
|
||||
#define CNNT_SYS_PTP_TIMESTAMP_H_M (CNNT_SYS_PTP_TIMESTAMP_H_V << CNNT_SYS_PTP_TIMESTAMP_H_S)
|
||||
#define CNNT_SYS_PTP_TIMESTAMP_H_V 0xFFFFFFFFU
|
||||
#define CNNT_SYS_PTP_TIMESTAMP_H_S 0
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
618
components/soc/esp32s31/register/soc/cnnt_sys_struct.h
Normal file
618
components/soc/esp32s31/register/soc/cnnt_sys_struct.h
Normal file
@@ -0,0 +1,618 @@
|
||||
/**
|
||||
* SPDX-FileCopyrightText: 2025 Espressif Systems (Shanghai) CO LTD
|
||||
*
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
*/
|
||||
#pragma once
|
||||
|
||||
#include <stdint.h>
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
/** Group: CNNT SYS VER DATE REG */
|
||||
/** Type of sys_ver_date register
|
||||
* NA
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** sys_ver_date : R/W; bitpos: [31:0]; default: 539298086;
|
||||
* NA
|
||||
*/
|
||||
uint32_t sys_ver_date:32;
|
||||
};
|
||||
uint32_t val;
|
||||
} cnnt_sys_ver_date_reg_t;
|
||||
|
||||
|
||||
/** Group: CNNT CLK EN REG */
|
||||
/** Type of clk_en register
|
||||
* NA
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** sys_date : R/W; bitpos: [30:0]; default: 38826240;
|
||||
* need_des
|
||||
*/
|
||||
uint32_t sys_date:31;
|
||||
/** sys_clk_en : R/W; bitpos: [31]; default: 0;
|
||||
* NA
|
||||
*/
|
||||
uint32_t sys_clk_en:1;
|
||||
};
|
||||
uint32_t val;
|
||||
} cnnt_clk_en_reg_t;
|
||||
|
||||
|
||||
/** Group: Configuration Register */
|
||||
/** Type of sys_sdmmc_mem_lp_ctrl register
|
||||
* HP CORE0 & HP CORE1 memory power control register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** sys_sdmmc_mem_lp_mode : R/W; bitpos: [1:0]; default: 2;
|
||||
* Configures sdmmc memory low power mode in low power stage.
|
||||
* 0: deep sleep
|
||||
* 1: light sleep
|
||||
* 2(default): shut down
|
||||
* 3: disable low power stage
|
||||
*/
|
||||
uint32_t sys_sdmmc_mem_lp_mode:2;
|
||||
/** sys_sdmmc_mem_lp_en : R/W; bitpos: [2]; default: 1;
|
||||
* Set this bit to power down sdmmc memory.
|
||||
*/
|
||||
uint32_t sys_sdmmc_mem_lp_en:1;
|
||||
/** sys_sdmmc_mem_lp_force_ctrl : R/W; bitpos: [3]; default: 0;
|
||||
* Set this bit to force software control sdmmc memory, disable hardware control.
|
||||
*/
|
||||
uint32_t sys_sdmmc_mem_lp_force_ctrl:1;
|
||||
uint32_t reserved_4:28;
|
||||
};
|
||||
uint32_t val;
|
||||
} cnnt_sys_sdmmc_mem_lp_ctrl_reg_t;
|
||||
|
||||
/** Type of sys_usb_otghs_mem_lp_ctrl register
|
||||
* HP CORE0 & HP CORE1 memory power control register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** sys_usb_otghs_mem_lp_mode : R/W; bitpos: [1:0]; default: 2;
|
||||
* Configures usb_otghs memory low power mode in low power stage.
|
||||
* 0: deep sleep
|
||||
* 1: light sleep
|
||||
* 2(default): shut down
|
||||
* 3: disable low power stage
|
||||
*/
|
||||
uint32_t sys_usb_otghs_mem_lp_mode:2;
|
||||
/** sys_usb_otghs_mem_lp_en : R/W; bitpos: [2]; default: 0;
|
||||
* Set this bit to power down usb_otghs memory.
|
||||
*/
|
||||
uint32_t sys_usb_otghs_mem_lp_en:1;
|
||||
/** sys_usb_otghs_mem_lp_force_ctrl : R/W; bitpos: [3]; default: 0;
|
||||
* Set this bit to force software control usb_otghs memory, disable hardware control.
|
||||
*/
|
||||
uint32_t sys_usb_otghs_mem_lp_force_ctrl:1;
|
||||
uint32_t reserved_4:28;
|
||||
};
|
||||
uint32_t val;
|
||||
} cnnt_sys_usb_otghs_mem_lp_ctrl_reg_t;
|
||||
|
||||
/** Type of sys_usb_device_mem_lp_ctrl register
|
||||
* HP CORE0 & HP CORE1 memory power control register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** sys_usb_device_mem_lp_mode : R/W; bitpos: [1:0]; default: 2;
|
||||
* Configures usb_device memory low power mode in low power stage.
|
||||
* 0: deep sleep
|
||||
* 1: light sleep
|
||||
* 2(default): shut down
|
||||
* 3: disable low power stage
|
||||
*/
|
||||
uint32_t sys_usb_device_mem_lp_mode:2;
|
||||
/** sys_usb_device_mem_lp_en : R/W; bitpos: [2]; default: 0;
|
||||
* Set this bit to power down usb_device memory.
|
||||
*/
|
||||
uint32_t sys_usb_device_mem_lp_en:1;
|
||||
/** sys_usb_device_mem_lp_force_ctrl : R/W; bitpos: [3]; default: 0;
|
||||
* Set this bit to force software control usb_device (serial jtag) memory, disable
|
||||
* hardware control.
|
||||
*/
|
||||
uint32_t sys_usb_device_mem_lp_force_ctrl:1;
|
||||
uint32_t reserved_4:28;
|
||||
};
|
||||
uint32_t val;
|
||||
} cnnt_sys_usb_device_mem_lp_ctrl_reg_t;
|
||||
|
||||
/** Type of sys_gmac_mem_lp_ctrl register
|
||||
* HP CORE0 & HP CORE1 memory power control register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** sys_gmac_mem_lp_mode : R/W; bitpos: [1:0]; default: 2;
|
||||
* Configures gmac memory low power mode in low power stage.
|
||||
* 0: deep sleep
|
||||
* 1: light sleep
|
||||
* 2(default): shut down
|
||||
* 3: disable low power stage
|
||||
*/
|
||||
uint32_t sys_gmac_mem_lp_mode:2;
|
||||
/** sys_gmac_mem_lp_en : R/W; bitpos: [2]; default: 1;
|
||||
* Set this bit to power down gmac memory.
|
||||
*/
|
||||
uint32_t sys_gmac_mem_lp_en:1;
|
||||
/** sys_gmac_mem_lp_force_ctrl : R/W; bitpos: [3]; default: 0;
|
||||
* Set this bit to force software control gmac memory, disable hardware control.
|
||||
*/
|
||||
uint32_t sys_gmac_mem_lp_force_ctrl:1;
|
||||
uint32_t reserved_4:28;
|
||||
};
|
||||
uint32_t val;
|
||||
} cnnt_sys_gmac_mem_lp_ctrl_reg_t;
|
||||
|
||||
|
||||
/** Group: configure_register */
|
||||
/** Type of sys_sprf_mem_aux_ctrl register
|
||||
* need_des
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** sys_sprf_mem_aux_ctrl : R/W; bitpos: [31:0]; default: 8304;
|
||||
* need_des
|
||||
*/
|
||||
uint32_t sys_sprf_mem_aux_ctrl:32;
|
||||
};
|
||||
uint32_t val;
|
||||
} cnnt_sys_sprf_mem_aux_ctrl_reg_t;
|
||||
|
||||
/** Type of sys_sdprf_mem_aux_ctrl register
|
||||
* need_des
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** sys_sdprf_mem_aux_ctrl : R/W; bitpos: [31:0]; default: 8304;
|
||||
* need_des
|
||||
*/
|
||||
uint32_t sys_sdprf_mem_aux_ctrl:32;
|
||||
};
|
||||
uint32_t val;
|
||||
} cnnt_sys_sdprf_mem_aux_ctrl_reg_t;
|
||||
|
||||
/** Type of sys_hp_pad_ulpi_ctrl register
|
||||
* HP Clock Control Register.
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
uint32_t reserved_0:30;
|
||||
/** sys_hp_pad_ulpi_clk_out_inv_en : R/W; bitpos: [30]; default: 0;
|
||||
* PAD ULPI Clock output inv Enable, valid only when CNNT_SYS_HP_PAD_ULPI_CLK_OUT_EN
|
||||
* is 1.
|
||||
*/
|
||||
uint32_t sys_hp_pad_ulpi_clk_out_inv_en:1;
|
||||
/** sys_hp_pad_ulpi_clk_out_en : R/W; bitpos: [31]; default: 0;
|
||||
* PAD ULPI Clock output Enable. 0: pad_ulpi_clk is used as input clk, 1: pad_ulpi_clk
|
||||
* is used as output clk
|
||||
*/
|
||||
uint32_t sys_hp_pad_ulpi_clk_out_en:1;
|
||||
};
|
||||
uint32_t val;
|
||||
} cnnt_sys_hp_pad_ulpi_ctrl_reg_t;
|
||||
|
||||
/** Type of sys_usb_clk_ctrl register
|
||||
* HP USB Clock Reset Control Register.
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
uint32_t reserved_0:8;
|
||||
/** sys_usb_48m_div_num : R/W; bitpos: [15:8]; default: 9;
|
||||
* usb 480m to 25m divide number.
|
||||
*/
|
||||
uint32_t sys_usb_48m_div_num:8;
|
||||
/** sys_usb_25m_div_num : R/W; bitpos: [23:16]; default: 19;
|
||||
* usb 500m to 25m divide number.
|
||||
*/
|
||||
uint32_t sys_usb_25m_div_num:8;
|
||||
/** sys_usb_12m_div_num : R/W; bitpos: [31:24]; default: 39;
|
||||
* usb 480m to 12m divide number.
|
||||
*/
|
||||
uint32_t sys_usb_12m_div_num:8;
|
||||
};
|
||||
uint32_t val;
|
||||
} cnnt_sys_usb_clk_ctrl_reg_t;
|
||||
|
||||
/** Type of sys_usb_otg20_ctrl register
|
||||
* HP USB Clock Reset Control Register.
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
uint32_t reserved_0:23;
|
||||
/** sys_usb_otg20_utmifs_clk_en : R/W; bitpos: [23]; default: 1;
|
||||
* usb otg20 utmifs clk enable.
|
||||
*/
|
||||
uint32_t sys_usb_otg20_utmifs_clk_en:1;
|
||||
/** sys_usb_otg20_ulpi_clk_en : R/W; bitpos: [24]; default: 0;
|
||||
* usb otg20 ulpi clk enable.
|
||||
*/
|
||||
uint32_t sys_usb_otg20_ulpi_clk_en:1;
|
||||
/** sys_usb_otg20_phyref_clk_src_sel : R/W; bitpos: [26:25]; default: 0;
|
||||
* usb otg20 hs phy src sel. 2''d0: 12m, 2''d1: 25m, 2''d2: pad_hsphy_refclk.'
|
||||
*/
|
||||
uint32_t sys_usb_otg20_phyref_clk_src_sel:2;
|
||||
/** sys_usb_otg20_phyref_clk_en : R/W; bitpos: [27]; default: 0;
|
||||
* usb otg20 hs phy refclk enable.
|
||||
*/
|
||||
uint32_t sys_usb_otg20_phyref_clk_en:1;
|
||||
uint32_t reserved_28:1;
|
||||
/** sys_usb_otg20_phy_rst_en : R/W; bitpos: [29]; default: 1;
|
||||
* usb otg20 phy reset en
|
||||
*/
|
||||
uint32_t sys_usb_otg20_phy_rst_en:1;
|
||||
/** sys_usb_otg20_ahb_rst_en : R/W; bitpos: [30]; default: 1;
|
||||
* usb otg20 ahb reset en
|
||||
*/
|
||||
uint32_t sys_usb_otg20_ahb_rst_en:1;
|
||||
/** sys_usb_otg20_apb_rst_en : R/W; bitpos: [31]; default: 1;
|
||||
* usb otg20 apb reset en
|
||||
*/
|
||||
uint32_t sys_usb_otg20_apb_rst_en:1;
|
||||
};
|
||||
uint32_t val;
|
||||
} cnnt_sys_usb_otg20_ctrl_reg_t;
|
||||
|
||||
/** Type of sys_hp_usb_device_ctrl register
|
||||
* HP USB Clock Reset Control Register.
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
uint32_t reserved_0:30;
|
||||
/** sys_usb_device_48m_clk_en : R/W; bitpos: [30]; default: 1;
|
||||
* usb device fs phy clock enable.
|
||||
*/
|
||||
uint32_t sys_usb_device_48m_clk_en:1;
|
||||
/** sys_usb_device_rst_en : R/W; bitpos: [31]; default: 0;
|
||||
* usb device reset en
|
||||
*/
|
||||
uint32_t sys_usb_device_rst_en:1;
|
||||
};
|
||||
uint32_t val;
|
||||
} cnnt_sys_hp_usb_device_ctrl_reg_t;
|
||||
|
||||
/** Type of sys_hp_sdmmc_ctrl register
|
||||
* need_des
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
uint32_t reserved_0:29;
|
||||
/** sys_sdmmc_ahb2axi_post_write_en : R/W; bitpos: [29]; default: 0;
|
||||
* this reg is used to enable the post_write function of the ahb2axi bridge for sdmmc
|
||||
*/
|
||||
uint32_t sys_sdmmc_ahb2axi_post_write_en:1;
|
||||
/** sys_sdmmc_rst_en : R/W; bitpos: [30]; default: 0;
|
||||
* hp sdmmc reset en
|
||||
*/
|
||||
uint32_t sys_sdmmc_rst_en:1;
|
||||
/** sys_sdmmc_force_norst : R/W; bitpos: [31]; default: 0;
|
||||
* hp sdmmc force norst
|
||||
*/
|
||||
uint32_t sys_sdmmc_force_norst:1;
|
||||
};
|
||||
uint32_t val;
|
||||
} cnnt_sys_hp_sdmmc_ctrl_reg_t;
|
||||
|
||||
/** Type of sys_hp_emac_ctrl register
|
||||
* need_des
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** sys_emac_useless_clk_en : R/W; bitpos: [0]; default: 0;
|
||||
* need_des
|
||||
*/
|
||||
uint32_t sys_emac_useless_clk_en:1;
|
||||
/** sys_emac_rst_en : R/W; bitpos: [1]; default: 0;
|
||||
* need_des
|
||||
*/
|
||||
uint32_t sys_emac_rst_en:1;
|
||||
/** sys_emac_force_norst : R/W; bitpos: [2]; default: 0;
|
||||
* need_des
|
||||
*/
|
||||
uint32_t sys_emac_force_norst:1;
|
||||
uint32_t reserved_3:29;
|
||||
};
|
||||
uint32_t val;
|
||||
} cnnt_sys_hp_emac_ctrl_reg_t;
|
||||
|
||||
/** Type of sys_hp_emac_ref_ctrl register
|
||||
* need_des
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** sys_emac_ref_clk_sel : R/W; bitpos: [1:0]; default: 0;
|
||||
* select emac reference clock source. 0: mpll 500MHz, 1: cpll 300MHz.
|
||||
*/
|
||||
uint32_t sys_emac_ref_clk_sel:2;
|
||||
/** sys_emac_ref_clk_en : R/W; bitpos: [2]; default: 0;
|
||||
* Set as 1 to enable emac reference clock source selection
|
||||
*/
|
||||
uint32_t sys_emac_ref_clk_en:1;
|
||||
/** sys_emac_ref_50m_pad_out_clk_en : R/W; bitpos: [3]; default: 0;
|
||||
* need_des
|
||||
*/
|
||||
uint32_t sys_emac_ref_50m_pad_out_clk_en:1;
|
||||
uint32_t reserved_4:4;
|
||||
/** sys_emac_ref_clk_div_num : R/W; bitpos: [15:8]; default: 0;
|
||||
* Divide number of the divider which is used to divide reference clock source.
|
||||
*/
|
||||
uint32_t sys_emac_ref_clk_div_num:8;
|
||||
uint32_t reserved_16:16;
|
||||
};
|
||||
uint32_t val;
|
||||
} cnnt_sys_hp_emac_ref_ctrl_reg_t;
|
||||
|
||||
/** Type of sys_hp_emac_rmii_pad_ctrl register
|
||||
* need_des
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
uint32_t reserved_0:1;
|
||||
/** sys_emac_rmii_pad_clk_en : R/W; bitpos: [1]; default: 0;
|
||||
* need_des
|
||||
*/
|
||||
uint32_t sys_emac_rmii_pad_clk_en:1;
|
||||
/** sys_emac_rmii_pad_clk_inv_en : R/W; bitpos: [2]; default: 0;
|
||||
* need_des
|
||||
*/
|
||||
uint32_t sys_emac_rmii_pad_clk_inv_en:1;
|
||||
uint32_t reserved_3:29;
|
||||
};
|
||||
uint32_t val;
|
||||
} cnnt_sys_hp_emac_rmii_pad_ctrl_reg_t;
|
||||
|
||||
/** Type of sys_hp_emac_rmii_ctrl register
|
||||
* need_des
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** sys_emac_rmii_clk_sel : R/W; bitpos: [0]; default: 0;
|
||||
* need_des
|
||||
*/
|
||||
uint32_t sys_emac_rmii_clk_sel:1;
|
||||
/** sys_emac_rmii_clk_en : R/W; bitpos: [1]; default: 0;
|
||||
* need_des
|
||||
*/
|
||||
uint32_t sys_emac_rmii_clk_en:1;
|
||||
/** sys_emac_rmii_pad_out_clk_en : R/W; bitpos: [2]; default: 0;
|
||||
* need_des
|
||||
*/
|
||||
uint32_t sys_emac_rmii_pad_out_clk_en:1;
|
||||
uint32_t reserved_3:5;
|
||||
/** sys_emac_rxtx_clk_div_num : R/W; bitpos: [12:8]; default: 0;
|
||||
* need_des
|
||||
*/
|
||||
uint32_t sys_emac_rxtx_clk_div_num:5;
|
||||
uint32_t reserved_13:19;
|
||||
};
|
||||
uint32_t val;
|
||||
} cnnt_sys_hp_emac_rmii_ctrl_reg_t;
|
||||
|
||||
/** Type of sys_hp_emac_rx_ctrl register
|
||||
* need_des
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** sys_emac_rx_pad_clk_en : R/W; bitpos: [0]; default: 0;
|
||||
* need_des
|
||||
*/
|
||||
uint32_t sys_emac_rx_pad_clk_en:1;
|
||||
/** sys_emac_rx_pad_clk_inv_en : R/W; bitpos: [1]; default: 0;
|
||||
* need_des
|
||||
*/
|
||||
uint32_t sys_emac_rx_pad_clk_inv_en:1;
|
||||
/** sys_emac_rx_clk_sel : R/W; bitpos: [2]; default: 0;
|
||||
* need_des
|
||||
*/
|
||||
uint32_t sys_emac_rx_clk_sel:1;
|
||||
/** sys_emac_rx_180_clk_en : R/W; bitpos: [3]; default: 0;
|
||||
* need_des
|
||||
*/
|
||||
uint32_t sys_emac_rx_180_clk_en:1;
|
||||
uint32_t reserved_4:28;
|
||||
};
|
||||
uint32_t val;
|
||||
} cnnt_sys_hp_emac_rx_ctrl_reg_t;
|
||||
|
||||
/** Type of sys_hp_emac_tx_ctrl register
|
||||
* need_des
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** sys_emac_tx_pad_clk_en : R/W; bitpos: [0]; default: 0;
|
||||
* need_des
|
||||
*/
|
||||
uint32_t sys_emac_tx_pad_clk_en:1;
|
||||
/** sys_emac_tx_pad_clk_inv_en : R/W; bitpos: [1]; default: 0;
|
||||
* need_des
|
||||
*/
|
||||
uint32_t sys_emac_tx_pad_clk_inv_en:1;
|
||||
/** sys_emac_tx_clk_sel : R/W; bitpos: [2]; default: 0;
|
||||
* need_des
|
||||
*/
|
||||
uint32_t sys_emac_tx_clk_sel:1;
|
||||
/** sys_emac_tx_180_clk_en : R/W; bitpos: [3]; default: 0;
|
||||
* need_des
|
||||
*/
|
||||
uint32_t sys_emac_tx_180_clk_en:1;
|
||||
uint32_t reserved_4:28;
|
||||
};
|
||||
uint32_t val;
|
||||
} cnnt_sys_hp_emac_tx_ctrl_reg_t;
|
||||
|
||||
/** Type of sys_hp_emac_ptp_ctrl register
|
||||
* need_des
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** sys_emac_ptp_ref_clk_en : R/W; bitpos: [0]; default: 0;
|
||||
* Set as 1 to enable emac PTP clock source selection.
|
||||
*/
|
||||
uint32_t sys_emac_ptp_ref_clk_en:1;
|
||||
/** sys_emac_ptp_ref_clk_sel : R/W; bitpos: [1]; default: 0;
|
||||
* select emac PTP clock source. 0: xtal clock, 1: 80MHz internal clock.
|
||||
*/
|
||||
uint32_t sys_emac_ptp_ref_clk_sel:1;
|
||||
uint32_t reserved_2:30;
|
||||
};
|
||||
uint32_t val;
|
||||
} cnnt_sys_hp_emac_ptp_ctrl_reg_t;
|
||||
|
||||
/** Type of sys_spram_mem_aux_ctrl register
|
||||
* need_des
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** sys_spram_mem_aux_ctrl : R/W; bitpos: [31:0]; default: 8304;
|
||||
* need_des
|
||||
*/
|
||||
uint32_t sys_spram_mem_aux_ctrl:32;
|
||||
};
|
||||
uint32_t val;
|
||||
} cnnt_sys_spram_mem_aux_ctrl_reg_t;
|
||||
|
||||
|
||||
/** Group: cnnt_iomux_ctrl */
|
||||
/** Type of sys_cnnt_iomux_ctrl0 register
|
||||
* need_des
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** sys_reg_cnnt_iomux_apb_rst_en : R/W; bitpos: [0]; default: 0;
|
||||
* cnnt_iomux rst en
|
||||
*/
|
||||
uint32_t sys_reg_cnnt_iomux_apb_rst_en:1;
|
||||
uint32_t reserved_1:31;
|
||||
};
|
||||
uint32_t val;
|
||||
} cnnt_sys_cnnt_iomux_ctrl0_reg_t;
|
||||
|
||||
|
||||
/** Group: GMAC Control Register */
|
||||
/** Type of sys_gmac_ctrl0 register
|
||||
* N/A
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** sys_ptp_pps : RO; bitpos: [0]; default: 0;
|
||||
* N/A
|
||||
*/
|
||||
uint32_t sys_ptp_pps:1;
|
||||
/** sys_sbd_flowctrl : R/W; bitpos: [1]; default: 0;
|
||||
* N/A
|
||||
*/
|
||||
uint32_t sys_sbd_flowctrl:1;
|
||||
/** sys_phy_intf_sel : R/W; bitpos: [4:2]; default: 0;
|
||||
* N/A
|
||||
*/
|
||||
uint32_t sys_phy_intf_sel:3;
|
||||
/** sys_gmac_mem_clk_force_on : R/W; bitpos: [5]; default: 0;
|
||||
* N/A
|
||||
*/
|
||||
uint32_t sys_gmac_mem_clk_force_on:1;
|
||||
/** sys_gmac_rst_clk_tx_n : RO; bitpos: [6]; default: 0;
|
||||
* N/A
|
||||
*/
|
||||
uint32_t sys_gmac_rst_clk_tx_n:1;
|
||||
/** sys_gmac_rst_clk_rx_n : RO; bitpos: [7]; default: 0;
|
||||
* N/A
|
||||
*/
|
||||
uint32_t sys_gmac_rst_clk_rx_n:1;
|
||||
/** sys_gmac_cactive : RO; bitpos: [8]; default: 0;
|
||||
* this signal indicates that the GMAC-AXI requires its clock signal , 1 : required ,0
|
||||
* : not required
|
||||
*/
|
||||
uint32_t sys_gmac_cactive:1;
|
||||
/** sys_gmac_csysack : RO; bitpos: [9]; default: 0;
|
||||
* this signal is the acknowledgement from the GMAC-AXI to the system for low-power
|
||||
* request ,active high
|
||||
*/
|
||||
uint32_t sys_gmac_csysack:1;
|
||||
/** sys_gmac_csysreq : R/W; bitpos: [10]; default: 0;
|
||||
* clock controller system low-power request , when asserted low ,indicates the
|
||||
* controller hs requested the GMAX-AXI to enter a lowpower state
|
||||
*/
|
||||
uint32_t sys_gmac_csysreq:1;
|
||||
/** sys_gmac_apb_postw_en : R/W; bitpos: [11]; default: 0;
|
||||
* N/A
|
||||
*/
|
||||
uint32_t sys_gmac_apb_postw_en:1;
|
||||
/** sys_gmac_mem_prdyn : RO; bitpos: [12]; default: 1;
|
||||
* record memory power status
|
||||
*/
|
||||
uint32_t sys_gmac_mem_prdyn:1;
|
||||
uint32_t reserved_13:19;
|
||||
};
|
||||
uint32_t val;
|
||||
} cnnt_sys_gmac_ctrl0_reg_t;
|
||||
|
||||
/** Type of sys_gmac_ctrl1 register
|
||||
* N/A
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** sys_ptp_timestamp_l : RO; bitpos: [31:0]; default: 0;
|
||||
* N/A
|
||||
*/
|
||||
uint32_t sys_ptp_timestamp_l:32;
|
||||
};
|
||||
uint32_t val;
|
||||
} cnnt_sys_gmac_ctrl1_reg_t;
|
||||
|
||||
/** Type of sys_gmac_ctrl2 register
|
||||
* N/A
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** sys_ptp_timestamp_h : RO; bitpos: [31:0]; default: 0;
|
||||
* N/A
|
||||
*/
|
||||
uint32_t sys_ptp_timestamp_h:32;
|
||||
};
|
||||
uint32_t val;
|
||||
} cnnt_sys_gmac_ctrl2_reg_t;
|
||||
|
||||
|
||||
typedef struct {
|
||||
volatile cnnt_sys_ver_date_reg_t sys_ver_date;
|
||||
volatile cnnt_clk_en_reg_t clk_en;
|
||||
uint32_t reserved_008[2];
|
||||
volatile cnnt_sys_sdmmc_mem_lp_ctrl_reg_t sys_sdmmc_mem_lp_ctrl;
|
||||
volatile cnnt_sys_usb_otghs_mem_lp_ctrl_reg_t sys_usb_otghs_mem_lp_ctrl;
|
||||
volatile cnnt_sys_usb_device_mem_lp_ctrl_reg_t sys_usb_device_mem_lp_ctrl;
|
||||
volatile cnnt_sys_gmac_mem_lp_ctrl_reg_t sys_gmac_mem_lp_ctrl;
|
||||
volatile cnnt_sys_sprf_mem_aux_ctrl_reg_t sys_sprf_mem_aux_ctrl;
|
||||
volatile cnnt_sys_sdprf_mem_aux_ctrl_reg_t sys_sdprf_mem_aux_ctrl;
|
||||
volatile cnnt_sys_hp_pad_ulpi_ctrl_reg_t sys_hp_pad_ulpi_ctrl;
|
||||
volatile cnnt_sys_usb_clk_ctrl_reg_t sys_usb_clk_ctrl;
|
||||
volatile cnnt_sys_usb_otg20_ctrl_reg_t sys_usb_otg20_ctrl;
|
||||
volatile cnnt_sys_hp_usb_device_ctrl_reg_t sys_hp_usb_device_ctrl;
|
||||
volatile cnnt_sys_hp_sdmmc_ctrl_reg_t sys_hp_sdmmc_ctrl;
|
||||
volatile cnnt_sys_hp_emac_ctrl_reg_t sys_hp_emac_ctrl;
|
||||
volatile cnnt_sys_hp_emac_ref_ctrl_reg_t sys_hp_emac_ref_ctrl;
|
||||
volatile cnnt_sys_hp_emac_rmii_pad_ctrl_reg_t sys_hp_emac_rmii_pad_ctrl;
|
||||
volatile cnnt_sys_hp_emac_rmii_ctrl_reg_t sys_hp_emac_rmii_ctrl;
|
||||
volatile cnnt_sys_hp_emac_rx_ctrl_reg_t sys_hp_emac_rx_ctrl;
|
||||
volatile cnnt_sys_hp_emac_tx_ctrl_reg_t sys_hp_emac_tx_ctrl;
|
||||
volatile cnnt_sys_hp_emac_ptp_ctrl_reg_t sys_hp_emac_ptp_ctrl;
|
||||
volatile cnnt_sys_cnnt_iomux_ctrl0_reg_t sys_cnnt_iomux_ctrl0;
|
||||
volatile cnnt_sys_spram_mem_aux_ctrl_reg_t sys_spram_mem_aux_ctrl;
|
||||
volatile cnnt_sys_gmac_ctrl0_reg_t sys_gmac_ctrl0;
|
||||
volatile cnnt_sys_gmac_ctrl1_reg_t sys_gmac_ctrl1;
|
||||
volatile cnnt_sys_gmac_ctrl2_reg_t sys_gmac_ctrl2;
|
||||
} cnnt_dev_t;
|
||||
|
||||
|
||||
#ifndef __cplusplus
|
||||
_Static_assert(sizeof(cnnt_dev_t) == 0x6c, "Invalid size of cnnt_dev_t structure");
|
||||
#endif
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
351
components/soc/esp32s31/register/soc/cordic_reg.h
Normal file
351
components/soc/esp32s31/register/soc/cordic_reg.h
Normal file
@@ -0,0 +1,351 @@
|
||||
/**
|
||||
* SPDX-FileCopyrightText: 2025 Espressif Systems (Shanghai) CO LTD
|
||||
*
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
*/
|
||||
#pragma once
|
||||
|
||||
#include <stdint.h>
|
||||
#include "soc/soc.h"
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
/** CORDIC_CSR_CFG_REG register
|
||||
* Cordic model config register
|
||||
*/
|
||||
#define CORDIC_CSR_CFG_REG (DR_REG_CORDIC_BASE + 0x0)
|
||||
/** CORDIC_FUNC : R/W; bitpos: [3:0]; default: 0;
|
||||
* Used to inicate the type of operation currently being performed
|
||||
*/
|
||||
#define CORDIC_FUNC 0x0000000FU
|
||||
#define CORDIC_FUNC_M (CORDIC_FUNC_V << CORDIC_FUNC_S)
|
||||
#define CORDIC_FUNC_V 0x0000000FU
|
||||
#define CORDIC_FUNC_S 0
|
||||
/** CORDIC_PRES : R/W; bitpos: [7:4]; default: 0;
|
||||
* Instruct the cordic calculate cycle number
|
||||
*/
|
||||
#define CORDIC_PRES 0x0000000FU
|
||||
#define CORDIC_PRES_M (CORDIC_PRES_V << CORDIC_PRES_S)
|
||||
#define CORDIC_PRES_V 0x0000000FU
|
||||
#define CORDIC_PRES_S 4
|
||||
/** CORDIC_SCALE : R/W; bitpos: [11:8]; default: 0;
|
||||
* The scaling of Input argument
|
||||
*/
|
||||
#define CORDIC_SCALE 0x0000000FU
|
||||
#define CORDIC_SCALE_M (CORDIC_SCALE_V << CORDIC_SCALE_S)
|
||||
#define CORDIC_SCALE_V 0x0000000FU
|
||||
#define CORDIC_SCALE_S 8
|
||||
/** CORDIC_WORK_MODE : R/W; bitpos: [18:17]; default: 0;
|
||||
* Select Cordic Module data transfer Mode,2'd0: reg_in,reg_out, no zero mode, 2'd1:
|
||||
* dma_in, reg_out, no zero mode, 2'd2: dma_loop, 2'd3: reg_in, reg_out, zero mode
|
||||
*/
|
||||
#define CORDIC_WORK_MODE 0x00000003U
|
||||
#define CORDIC_WORK_MODE_M (CORDIC_WORK_MODE_V << CORDIC_WORK_MODE_S)
|
||||
#define CORDIC_WORK_MODE_V 0x00000003U
|
||||
#define CORDIC_WORK_MODE_S 17
|
||||
/** CORDIC_RES_NUM : R/W; bitpos: [19]; default: 0;
|
||||
* Result number
|
||||
*/
|
||||
#define CORDIC_RES_NUM (BIT(19))
|
||||
#define CORDIC_RES_NUM_M (CORDIC_RES_NUM_V << CORDIC_RES_NUM_S)
|
||||
#define CORDIC_RES_NUM_V 0x00000001U
|
||||
#define CORDIC_RES_NUM_S 19
|
||||
/** CORDIC_ARG_NUM : R/W; bitpos: [20]; default: 0;
|
||||
* Argument number
|
||||
*/
|
||||
#define CORDIC_ARG_NUM (BIT(20))
|
||||
#define CORDIC_ARG_NUM_M (CORDIC_ARG_NUM_V << CORDIC_ARG_NUM_S)
|
||||
#define CORDIC_ARG_NUM_V 0x00000001U
|
||||
#define CORDIC_ARG_NUM_S 20
|
||||
/** CORDIC_RES_SIZE : R/W; bitpos: [21]; default: 0;
|
||||
* Result Size, 0: q1.15, 1: q1.31
|
||||
*/
|
||||
#define CORDIC_RES_SIZE (BIT(21))
|
||||
#define CORDIC_RES_SIZE_M (CORDIC_RES_SIZE_V << CORDIC_RES_SIZE_S)
|
||||
#define CORDIC_RES_SIZE_V 0x00000001U
|
||||
#define CORDIC_RES_SIZE_S 21
|
||||
/** CORDIC_ARG_SIZE : R/W; bitpos: [22]; default: 0;
|
||||
* Argument Size, 0: q1.15, 1: q1.31
|
||||
*/
|
||||
#define CORDIC_ARG_SIZE (BIT(22))
|
||||
#define CORDIC_ARG_SIZE_M (CORDIC_ARG_SIZE_V << CORDIC_ARG_SIZE_S)
|
||||
#define CORDIC_ARG_SIZE_V 0x00000001U
|
||||
#define CORDIC_ARG_SIZE_S 22
|
||||
/** CORDIC_UPDATE_FLAG : R/W/SC; bitpos: [29]; default: 0;
|
||||
* Used to synchronize register data to the computing core and start calculate
|
||||
*/
|
||||
#define CORDIC_UPDATE_FLAG (BIT(29))
|
||||
#define CORDIC_UPDATE_FLAG_M (CORDIC_UPDATE_FLAG_V << CORDIC_UPDATE_FLAG_S)
|
||||
#define CORDIC_UPDATE_FLAG_V 0x00000001U
|
||||
#define CORDIC_UPDATE_FLAG_S 29
|
||||
/** CORDIC_RES_ALL_RDY_FLAG : RO/SS/SC; bitpos: [30]; default: 0;
|
||||
* Used to indicate whether the operation all result has been stored in the result
|
||||
* register
|
||||
*/
|
||||
#define CORDIC_RES_ALL_RDY_FLAG (BIT(30))
|
||||
#define CORDIC_RES_ALL_RDY_FLAG_M (CORDIC_RES_ALL_RDY_FLAG_V << CORDIC_RES_ALL_RDY_FLAG_S)
|
||||
#define CORDIC_RES_ALL_RDY_FLAG_V 0x00000001U
|
||||
#define CORDIC_RES_ALL_RDY_FLAG_S 30
|
||||
/** CORDIC_RES_RDY_FLAG : RO/SS/SC; bitpos: [31]; default: 0;
|
||||
* Used to indicate whether the operation result has been stored in the result register
|
||||
*/
|
||||
#define CORDIC_RES_RDY_FLAG (BIT(31))
|
||||
#define CORDIC_RES_RDY_FLAG_M (CORDIC_RES_RDY_FLAG_V << CORDIC_RES_RDY_FLAG_S)
|
||||
#define CORDIC_RES_RDY_FLAG_V 0x00000001U
|
||||
#define CORDIC_RES_RDY_FLAG_S 31
|
||||
|
||||
/** CORDIC_ARG1_REG register
|
||||
* Cordic argument 1 config register
|
||||
*/
|
||||
#define CORDIC_ARG1_REG (DR_REG_CORDIC_BASE + 0x4)
|
||||
/** CORDIC_ARG1_DATA : R/W; bitpos: [31:0]; default: 0;
|
||||
* First argument data for calculate
|
||||
*/
|
||||
#define CORDIC_ARG1_DATA 0xFFFFFFFFU
|
||||
#define CORDIC_ARG1_DATA_M (CORDIC_ARG1_DATA_V << CORDIC_ARG1_DATA_S)
|
||||
#define CORDIC_ARG1_DATA_V 0xFFFFFFFFU
|
||||
#define CORDIC_ARG1_DATA_S 0
|
||||
|
||||
/** CORDIC_ARG2_REG register
|
||||
* Cordic argument 2 config register
|
||||
*/
|
||||
#define CORDIC_ARG2_REG (DR_REG_CORDIC_BASE + 0x8)
|
||||
/** CORDIC_ARG2_DATA : R/W; bitpos: [31:0]; default: 0;
|
||||
* Second argument data for calculate
|
||||
*/
|
||||
#define CORDIC_ARG2_DATA 0xFFFFFFFFU
|
||||
#define CORDIC_ARG2_DATA_M (CORDIC_ARG2_DATA_V << CORDIC_ARG2_DATA_S)
|
||||
#define CORDIC_ARG2_DATA_V 0xFFFFFFFFU
|
||||
#define CORDIC_ARG2_DATA_S 0
|
||||
|
||||
/** CORDIC_RES1_REG register
|
||||
* Cordic result 1 receive register
|
||||
*/
|
||||
#define CORDIC_RES1_REG (DR_REG_CORDIC_BASE + 0xc)
|
||||
/** CORDIC_RES1_DATA : RO; bitpos: [31:0]; default: 0;
|
||||
* First result data from calculate
|
||||
*/
|
||||
#define CORDIC_RES1_DATA 0xFFFFFFFFU
|
||||
#define CORDIC_RES1_DATA_M (CORDIC_RES1_DATA_V << CORDIC_RES1_DATA_S)
|
||||
#define CORDIC_RES1_DATA_V 0xFFFFFFFFU
|
||||
#define CORDIC_RES1_DATA_S 0
|
||||
|
||||
/** CORDIC_RES2_REG register
|
||||
* Cordic result 2 receive register
|
||||
*/
|
||||
#define CORDIC_RES2_REG (DR_REG_CORDIC_BASE + 0x10)
|
||||
/** CORDIC_RES2_DATA : RO; bitpos: [31:0]; default: 0;
|
||||
* Second result data from calculate
|
||||
*/
|
||||
#define CORDIC_RES2_DATA 0xFFFFFFFFU
|
||||
#define CORDIC_RES2_DATA_M (CORDIC_RES2_DATA_V << CORDIC_RES2_DATA_S)
|
||||
#define CORDIC_RES2_DATA_V 0xFFFFFFFFU
|
||||
#define CORDIC_RES2_DATA_S 0
|
||||
|
||||
/** CORDIC_IO_INT_ENA_REG register
|
||||
* Cordic interrupt enable signal configuration register.
|
||||
*/
|
||||
#define CORDIC_IO_INT_ENA_REG (DR_REG_CORDIC_BASE + 0x28)
|
||||
/** CORDIC_CAL_DONE_INT_ENA : R/W; bitpos: [0]; default: 0;
|
||||
* Write 1 to enable CAL_DONE_INT.
|
||||
*/
|
||||
#define CORDIC_CAL_DONE_INT_ENA (BIT(0))
|
||||
#define CORDIC_CAL_DONE_INT_ENA_M (CORDIC_CAL_DONE_INT_ENA_V << CORDIC_CAL_DONE_INT_ENA_S)
|
||||
#define CORDIC_CAL_DONE_INT_ENA_V 0x00000001U
|
||||
#define CORDIC_CAL_DONE_INT_ENA_S 0
|
||||
/** CORDIC_DMA_ALL_CAL_DONE_INT_ENA : R/W; bitpos: [1]; default: 0;
|
||||
* Write 1 to enable DMA_ALL_CAL_DONE_INT.
|
||||
*/
|
||||
#define CORDIC_DMA_ALL_CAL_DONE_INT_ENA (BIT(1))
|
||||
#define CORDIC_DMA_ALL_CAL_DONE_INT_ENA_M (CORDIC_DMA_ALL_CAL_DONE_INT_ENA_V << CORDIC_DMA_ALL_CAL_DONE_INT_ENA_S)
|
||||
#define CORDIC_DMA_ALL_CAL_DONE_INT_ENA_V 0x00000001U
|
||||
#define CORDIC_DMA_ALL_CAL_DONE_INT_ENA_S 1
|
||||
/** CORDIC_OUT_AFIFO_WOVF_INT_ENA : R/W; bitpos: [2]; default: 0;
|
||||
* Write 1 to enable OUT_AFIFO_WOVF_INT.
|
||||
*/
|
||||
#define CORDIC_OUT_AFIFO_WOVF_INT_ENA (BIT(2))
|
||||
#define CORDIC_OUT_AFIFO_WOVF_INT_ENA_M (CORDIC_OUT_AFIFO_WOVF_INT_ENA_V << CORDIC_OUT_AFIFO_WOVF_INT_ENA_S)
|
||||
#define CORDIC_OUT_AFIFO_WOVF_INT_ENA_V 0x00000001U
|
||||
#define CORDIC_OUT_AFIFO_WOVF_INT_ENA_S 2
|
||||
/** CORDIC_IN_AFIFO_RUDF_INT_ENA : R/W; bitpos: [3]; default: 0;
|
||||
* Write 1 to enable IN_AFIFO_RUDF_INT.
|
||||
*/
|
||||
#define CORDIC_IN_AFIFO_RUDF_INT_ENA (BIT(3))
|
||||
#define CORDIC_IN_AFIFO_RUDF_INT_ENA_M (CORDIC_IN_AFIFO_RUDF_INT_ENA_V << CORDIC_IN_AFIFO_RUDF_INT_ENA_S)
|
||||
#define CORDIC_IN_AFIFO_RUDF_INT_ENA_V 0x00000001U
|
||||
#define CORDIC_IN_AFIFO_RUDF_INT_ENA_S 3
|
||||
/** CORDIC_ARG_NUM_ERR_INT_ENA : R/W; bitpos: [4]; default: 0;
|
||||
* Write 1 to enable ARG_NUM_ERR_INT.
|
||||
*/
|
||||
#define CORDIC_ARG_NUM_ERR_INT_ENA (BIT(4))
|
||||
#define CORDIC_ARG_NUM_ERR_INT_ENA_M (CORDIC_ARG_NUM_ERR_INT_ENA_V << CORDIC_ARG_NUM_ERR_INT_ENA_S)
|
||||
#define CORDIC_ARG_NUM_ERR_INT_ENA_V 0x00000001U
|
||||
#define CORDIC_ARG_NUM_ERR_INT_ENA_S 4
|
||||
|
||||
/** CORDIC_IO_INT_RAW_REG register
|
||||
* Cordic interrupt raw signal status register.
|
||||
*/
|
||||
#define CORDIC_IO_INT_RAW_REG (DR_REG_CORDIC_BASE + 0x2c)
|
||||
/** CORDIC_CAL_DONE_INT_RAW : R/SS/WTC; bitpos: [0]; default: 0;
|
||||
* The raw interrupt status of CAL_DONE_INT.
|
||||
*/
|
||||
#define CORDIC_CAL_DONE_INT_RAW (BIT(0))
|
||||
#define CORDIC_CAL_DONE_INT_RAW_M (CORDIC_CAL_DONE_INT_RAW_V << CORDIC_CAL_DONE_INT_RAW_S)
|
||||
#define CORDIC_CAL_DONE_INT_RAW_V 0x00000001U
|
||||
#define CORDIC_CAL_DONE_INT_RAW_S 0
|
||||
/** CORDIC_DMA_ALL_CAL_DONE_INT_RAW : R/SS/WTC; bitpos: [1]; default: 0;
|
||||
* The raw interrupt status of DMA_ALL_CAL_DONE_INT.
|
||||
*/
|
||||
#define CORDIC_DMA_ALL_CAL_DONE_INT_RAW (BIT(1))
|
||||
#define CORDIC_DMA_ALL_CAL_DONE_INT_RAW_M (CORDIC_DMA_ALL_CAL_DONE_INT_RAW_V << CORDIC_DMA_ALL_CAL_DONE_INT_RAW_S)
|
||||
#define CORDIC_DMA_ALL_CAL_DONE_INT_RAW_V 0x00000001U
|
||||
#define CORDIC_DMA_ALL_CAL_DONE_INT_RAW_S 1
|
||||
/** CORDIC_OUT_AFIFO_WOVF_INT_RAW : R/SS/WTC; bitpos: [2]; default: 0;
|
||||
* The raw interrupt status of OUT_AFIFO_WOVF_INT.
|
||||
*/
|
||||
#define CORDIC_OUT_AFIFO_WOVF_INT_RAW (BIT(2))
|
||||
#define CORDIC_OUT_AFIFO_WOVF_INT_RAW_M (CORDIC_OUT_AFIFO_WOVF_INT_RAW_V << CORDIC_OUT_AFIFO_WOVF_INT_RAW_S)
|
||||
#define CORDIC_OUT_AFIFO_WOVF_INT_RAW_V 0x00000001U
|
||||
#define CORDIC_OUT_AFIFO_WOVF_INT_RAW_S 2
|
||||
/** CORDIC_IN_AFIFO_RUDF_INT_RAW : R/SS/WTC; bitpos: [3]; default: 0;
|
||||
* The raw interrupt status of IN_AFIFO_RUDF_INT.
|
||||
*/
|
||||
#define CORDIC_IN_AFIFO_RUDF_INT_RAW (BIT(3))
|
||||
#define CORDIC_IN_AFIFO_RUDF_INT_RAW_M (CORDIC_IN_AFIFO_RUDF_INT_RAW_V << CORDIC_IN_AFIFO_RUDF_INT_RAW_S)
|
||||
#define CORDIC_IN_AFIFO_RUDF_INT_RAW_V 0x00000001U
|
||||
#define CORDIC_IN_AFIFO_RUDF_INT_RAW_S 3
|
||||
/** CORDIC_ARG_NUM_ERR_INT_RAW : R/SS/WTC; bitpos: [4]; default: 0;
|
||||
* The raw interrupt status of ARG_NUM_ERR_INT.
|
||||
*/
|
||||
#define CORDIC_ARG_NUM_ERR_INT_RAW (BIT(4))
|
||||
#define CORDIC_ARG_NUM_ERR_INT_RAW_M (CORDIC_ARG_NUM_ERR_INT_RAW_V << CORDIC_ARG_NUM_ERR_INT_RAW_S)
|
||||
#define CORDIC_ARG_NUM_ERR_INT_RAW_V 0x00000001U
|
||||
#define CORDIC_ARG_NUM_ERR_INT_RAW_S 4
|
||||
|
||||
/** CORDIC_IO_INT_ST_REG register
|
||||
* Cordic interrupt signal status register.
|
||||
*/
|
||||
#define CORDIC_IO_INT_ST_REG (DR_REG_CORDIC_BASE + 0x30)
|
||||
/** CORDIC_CAL_DONE_INT_ST : RO; bitpos: [0]; default: 0;
|
||||
* The masked interrupt status of CAL_DONE_INT.
|
||||
*/
|
||||
#define CORDIC_CAL_DONE_INT_ST (BIT(0))
|
||||
#define CORDIC_CAL_DONE_INT_ST_M (CORDIC_CAL_DONE_INT_ST_V << CORDIC_CAL_DONE_INT_ST_S)
|
||||
#define CORDIC_CAL_DONE_INT_ST_V 0x00000001U
|
||||
#define CORDIC_CAL_DONE_INT_ST_S 0
|
||||
/** CORDIC_DMA_ALL_CAL_DONE_INT_ST : RO; bitpos: [1]; default: 0;
|
||||
* The masked interrupt status of DMA_ALL_CAL_DONE_INT.
|
||||
*/
|
||||
#define CORDIC_DMA_ALL_CAL_DONE_INT_ST (BIT(1))
|
||||
#define CORDIC_DMA_ALL_CAL_DONE_INT_ST_M (CORDIC_DMA_ALL_CAL_DONE_INT_ST_V << CORDIC_DMA_ALL_CAL_DONE_INT_ST_S)
|
||||
#define CORDIC_DMA_ALL_CAL_DONE_INT_ST_V 0x00000001U
|
||||
#define CORDIC_DMA_ALL_CAL_DONE_INT_ST_S 1
|
||||
/** CORDIC_OUT_AFIFO_WOVF_INT_ST : RO; bitpos: [2]; default: 0;
|
||||
* The masked interrupt status of OUT_AFIFO_WOVF_INT.
|
||||
*/
|
||||
#define CORDIC_OUT_AFIFO_WOVF_INT_ST (BIT(2))
|
||||
#define CORDIC_OUT_AFIFO_WOVF_INT_ST_M (CORDIC_OUT_AFIFO_WOVF_INT_ST_V << CORDIC_OUT_AFIFO_WOVF_INT_ST_S)
|
||||
#define CORDIC_OUT_AFIFO_WOVF_INT_ST_V 0x00000001U
|
||||
#define CORDIC_OUT_AFIFO_WOVF_INT_ST_S 2
|
||||
/** CORDIC_IN_AFIFO_RUDF_INT_ST : RO; bitpos: [3]; default: 0;
|
||||
* The masked interrupt status of IN_AFIFO_RUDF_INT.
|
||||
*/
|
||||
#define CORDIC_IN_AFIFO_RUDF_INT_ST (BIT(3))
|
||||
#define CORDIC_IN_AFIFO_RUDF_INT_ST_M (CORDIC_IN_AFIFO_RUDF_INT_ST_V << CORDIC_IN_AFIFO_RUDF_INT_ST_S)
|
||||
#define CORDIC_IN_AFIFO_RUDF_INT_ST_V 0x00000001U
|
||||
#define CORDIC_IN_AFIFO_RUDF_INT_ST_S 3
|
||||
/** CORDIC_ARG_NUM_ERR_INT_ST : RO; bitpos: [4]; default: 0;
|
||||
* The masked interrupt status of ARG_NUM_ERR_INT.
|
||||
*/
|
||||
#define CORDIC_ARG_NUM_ERR_INT_ST (BIT(4))
|
||||
#define CORDIC_ARG_NUM_ERR_INT_ST_M (CORDIC_ARG_NUM_ERR_INT_ST_V << CORDIC_ARG_NUM_ERR_INT_ST_S)
|
||||
#define CORDIC_ARG_NUM_ERR_INT_ST_V 0x00000001U
|
||||
#define CORDIC_ARG_NUM_ERR_INT_ST_S 4
|
||||
|
||||
/** CORDIC_IO_INT_CLR_REG register
|
||||
* Cordic interrupt clear signal configuration register.
|
||||
*/
|
||||
#define CORDIC_IO_INT_CLR_REG (DR_REG_CORDIC_BASE + 0x34)
|
||||
/** CORDIC_CAL_DONE_INT_CLR : WT; bitpos: [0]; default: 0;
|
||||
* Write 1 to clear CAL_DONE_INT.
|
||||
*/
|
||||
#define CORDIC_CAL_DONE_INT_CLR (BIT(0))
|
||||
#define CORDIC_CAL_DONE_INT_CLR_M (CORDIC_CAL_DONE_INT_CLR_V << CORDIC_CAL_DONE_INT_CLR_S)
|
||||
#define CORDIC_CAL_DONE_INT_CLR_V 0x00000001U
|
||||
#define CORDIC_CAL_DONE_INT_CLR_S 0
|
||||
/** CORDIC_DMA_ALL_CAL_DONE_INT_CLR : WT; bitpos: [1]; default: 0;
|
||||
* Write 1 to clear DMA_ALL_CAL_DONE_INT.
|
||||
*/
|
||||
#define CORDIC_DMA_ALL_CAL_DONE_INT_CLR (BIT(1))
|
||||
#define CORDIC_DMA_ALL_CAL_DONE_INT_CLR_M (CORDIC_DMA_ALL_CAL_DONE_INT_CLR_V << CORDIC_DMA_ALL_CAL_DONE_INT_CLR_S)
|
||||
#define CORDIC_DMA_ALL_CAL_DONE_INT_CLR_V 0x00000001U
|
||||
#define CORDIC_DMA_ALL_CAL_DONE_INT_CLR_S 1
|
||||
/** CORDIC_OUT_AFIFO_WOVF_INT_CLR : WT; bitpos: [2]; default: 0;
|
||||
* Write 1 to clear OUT_AFIFO_WOVF_INT.
|
||||
*/
|
||||
#define CORDIC_OUT_AFIFO_WOVF_INT_CLR (BIT(2))
|
||||
#define CORDIC_OUT_AFIFO_WOVF_INT_CLR_M (CORDIC_OUT_AFIFO_WOVF_INT_CLR_V << CORDIC_OUT_AFIFO_WOVF_INT_CLR_S)
|
||||
#define CORDIC_OUT_AFIFO_WOVF_INT_CLR_V 0x00000001U
|
||||
#define CORDIC_OUT_AFIFO_WOVF_INT_CLR_S 2
|
||||
/** CORDIC_IN_AFIFO_RUDF_INT_CLR : WT; bitpos: [3]; default: 0;
|
||||
* Write 1 to clear IN_AFIFO_RUDF_INT.
|
||||
*/
|
||||
#define CORDIC_IN_AFIFO_RUDF_INT_CLR (BIT(3))
|
||||
#define CORDIC_IN_AFIFO_RUDF_INT_CLR_M (CORDIC_IN_AFIFO_RUDF_INT_CLR_V << CORDIC_IN_AFIFO_RUDF_INT_CLR_S)
|
||||
#define CORDIC_IN_AFIFO_RUDF_INT_CLR_V 0x00000001U
|
||||
#define CORDIC_IN_AFIFO_RUDF_INT_CLR_S 3
|
||||
/** CORDIC_ARG_NUM_ERR_INT_CLR : WT; bitpos: [4]; default: 0;
|
||||
* Write 1 to clear ARG_NUM_ERR_INT.
|
||||
*/
|
||||
#define CORDIC_ARG_NUM_ERR_INT_CLR (BIT(4))
|
||||
#define CORDIC_ARG_NUM_ERR_INT_CLR_M (CORDIC_ARG_NUM_ERR_INT_CLR_V << CORDIC_ARG_NUM_ERR_INT_CLR_S)
|
||||
#define CORDIC_ARG_NUM_ERR_INT_CLR_V 0x00000001U
|
||||
#define CORDIC_ARG_NUM_ERR_INT_CLR_S 4
|
||||
|
||||
/** CORDIC_FIFO_CFG_REG register
|
||||
* Cordic FIFO configuration register.
|
||||
*/
|
||||
#define CORDIC_FIFO_CFG_REG (DR_REG_CORDIC_BASE + 0x38)
|
||||
/** CORDIC_INFIFO_RESET : WT; bitpos: [0]; default: 0;
|
||||
* infifo_reset_register
|
||||
*/
|
||||
#define CORDIC_INFIFO_RESET (BIT(0))
|
||||
#define CORDIC_INFIFO_RESET_M (CORDIC_INFIFO_RESET_V << CORDIC_INFIFO_RESET_S)
|
||||
#define CORDIC_INFIFO_RESET_V 0x00000001U
|
||||
#define CORDIC_INFIFO_RESET_S 0
|
||||
/** CORDIC_OUTFIFO_RESET : WT; bitpos: [1]; default: 0;
|
||||
* outfifo_reset_register
|
||||
*/
|
||||
#define CORDIC_OUTFIFO_RESET (BIT(1))
|
||||
#define CORDIC_OUTFIFO_RESET_M (CORDIC_OUTFIFO_RESET_V << CORDIC_OUTFIFO_RESET_S)
|
||||
#define CORDIC_OUTFIFO_RESET_V 0x00000001U
|
||||
#define CORDIC_OUTFIFO_RESET_S 1
|
||||
|
||||
/** CORDIC_CLK_REG register
|
||||
* Cordic clk configuration register.
|
||||
*/
|
||||
#define CORDIC_CLK_REG (DR_REG_CORDIC_BASE + 0x3c)
|
||||
/** CORDIC_CLK_EN : R/W; bitpos: [31]; default: 0;
|
||||
* Force clock on for this register file
|
||||
*/
|
||||
#define CORDIC_CLK_EN (BIT(31))
|
||||
#define CORDIC_CLK_EN_M (CORDIC_CLK_EN_V << CORDIC_CLK_EN_S)
|
||||
#define CORDIC_CLK_EN_V 0x00000001U
|
||||
#define CORDIC_CLK_EN_S 31
|
||||
|
||||
/** CORDIC_VERSION_REG register
|
||||
* Version register.
|
||||
*/
|
||||
#define CORDIC_VERSION_REG (DR_REG_CORDIC_BASE + 0x40)
|
||||
/** CORDIC_DATE : R/W; bitpos: [27:0]; default: 37818960;
|
||||
* Version of this register file
|
||||
*/
|
||||
#define CORDIC_DATE 0x0FFFFFFFU
|
||||
#define CORDIC_DATE_M (CORDIC_DATE_V << CORDIC_DATE_S)
|
||||
#define CORDIC_DATE_V 0x0FFFFFFFU
|
||||
#define CORDIC_DATE_S 0
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
329
components/soc/esp32s31/register/soc/cordic_struct.h
Normal file
329
components/soc/esp32s31/register/soc/cordic_struct.h
Normal file
@@ -0,0 +1,329 @@
|
||||
/**
|
||||
* SPDX-FileCopyrightText: 2025 Espressif Systems (Shanghai) CO LTD
|
||||
*
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
*/
|
||||
#pragma once
|
||||
|
||||
#include <stdint.h>
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
/** Group: CORDIC Mode Configuration */
|
||||
/** Type of csr_cfg register
|
||||
* Cordic model config register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** func : R/W; bitpos: [3:0]; default: 0;
|
||||
* Used to inicate the type of operation currently being performed
|
||||
*/
|
||||
uint32_t func:4;
|
||||
/** press : R/W; bitpos: [7:4]; default: 0;
|
||||
* Instruct the cordic calculate cycle number
|
||||
*/
|
||||
uint32_t press:4;
|
||||
/** scale : R/W; bitpos: [11:8]; default: 0;
|
||||
* The scaling of Input argument
|
||||
*/
|
||||
uint32_t scale:4;
|
||||
uint32_t reserved_12:5;
|
||||
/** work_mode : R/W; bitpos: [18:17]; default: 0;
|
||||
* Select Cordic Module data transfer Mode,2'd0: reg_in,reg_out, no zero mode, 2'd1:
|
||||
* dma_in, reg_out, no zero mode, 2'd2: dma_loop, 2'd3: reg_in, reg_out, zero mode
|
||||
*/
|
||||
uint32_t work_mode:2;
|
||||
/** res_num : R/W; bitpos: [19]; default: 0;
|
||||
* Result number
|
||||
*/
|
||||
uint32_t res_num:1;
|
||||
/** arg_num : R/W; bitpos: [20]; default: 0;
|
||||
* Argument number
|
||||
*/
|
||||
uint32_t arg_num:1;
|
||||
/** res_size : R/W; bitpos: [21]; default: 0;
|
||||
* Result Size, 0: q1.15, 1: q1.31
|
||||
*/
|
||||
uint32_t res_size:1;
|
||||
/** arg_size : R/W; bitpos: [22]; default: 0;
|
||||
* Argument Size, 0: q1.15, 1: q1.31
|
||||
*/
|
||||
uint32_t arg_size:1;
|
||||
uint32_t reserved_23:6;
|
||||
/** update_flag : R/W/SC; bitpos: [29]; default: 0;
|
||||
* Used to synchronize register data to the computing core and start calculate
|
||||
*/
|
||||
uint32_t update_flag:1;
|
||||
/** res_all_rdy_flag : RO/SS/SC; bitpos: [30]; default: 0;
|
||||
* Used to indicate whether the operation all result has been stored in the result
|
||||
* register
|
||||
*/
|
||||
uint32_t res_all_rdy_flag:1;
|
||||
/** res_rdy_flag : RO/SS/SC; bitpos: [31]; default: 0;
|
||||
* Used to indicate whether the operation result has been stored in the result register
|
||||
*/
|
||||
uint32_t res_rdy_flag:1;
|
||||
};
|
||||
uint32_t val;
|
||||
} cordic_csr_cfg_reg_t;
|
||||
|
||||
|
||||
/** Group: CORDIC ARG1 Configuration */
|
||||
/** Type of arg1 register
|
||||
* Cordic argument 1 config register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** arg1_data : R/W; bitpos: [31:0]; default: 0;
|
||||
* First argument data for calculate
|
||||
*/
|
||||
uint32_t arg1_data:32;
|
||||
};
|
||||
uint32_t val;
|
||||
} cordic_arg1_reg_t;
|
||||
|
||||
|
||||
/** Group: CORDIC ARG2 Configuration */
|
||||
/** Type of arg2 register
|
||||
* Cordic argument 2 config register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** arg2_data : R/W; bitpos: [31:0]; default: 0;
|
||||
* Second argument data for calculate
|
||||
*/
|
||||
uint32_t arg2_data:32;
|
||||
};
|
||||
uint32_t val;
|
||||
} cordic_arg2_reg_t;
|
||||
|
||||
|
||||
/** Group: CORDIC RES1 Receive */
|
||||
/** Type of res1 register
|
||||
* Cordic result 1 receive register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** res1_data : RO; bitpos: [31:0]; default: 0;
|
||||
* First result data from calculate
|
||||
*/
|
||||
uint32_t res1_data:32;
|
||||
};
|
||||
uint32_t val;
|
||||
} cordic_res1_reg_t;
|
||||
|
||||
|
||||
/** Group: CORDIC RES2 Receive */
|
||||
/** Type of res2 register
|
||||
* Cordic result 2 receive register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** res2_data : RO; bitpos: [31:0]; default: 0;
|
||||
* Second result data from calculate
|
||||
*/
|
||||
uint32_t res2_data:32;
|
||||
};
|
||||
uint32_t val;
|
||||
} cordic_res2_reg_t;
|
||||
|
||||
|
||||
/** Group: CORDIC Interrupt Configuration and Status */
|
||||
/** Type of io_int_ena register
|
||||
* Cordic interrupt enable signal configuration register.
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** cal_done_int_ena : R/W; bitpos: [0]; default: 0;
|
||||
* Write 1 to enable CAL_DONE_INT.
|
||||
*/
|
||||
uint32_t cal_done_int_ena:1;
|
||||
/** dma_all_cal_done_int_ena : R/W; bitpos: [1]; default: 0;
|
||||
* Write 1 to enable DMA_ALL_CAL_DONE_INT.
|
||||
*/
|
||||
uint32_t dma_all_cal_done_int_ena:1;
|
||||
/** out_afifo_wovf_int_ena : R/W; bitpos: [2]; default: 0;
|
||||
* Write 1 to enable OUT_AFIFO_WOVF_INT.
|
||||
*/
|
||||
uint32_t out_afifo_wovf_int_ena:1;
|
||||
/** in_afifo_rudf_int_ena : R/W; bitpos: [3]; default: 0;
|
||||
* Write 1 to enable IN_AFIFO_RUDF_INT.
|
||||
*/
|
||||
uint32_t in_afifo_rudf_int_ena:1;
|
||||
/** arg_num_err_int_ena : R/W; bitpos: [4]; default: 0;
|
||||
* Write 1 to enable ARG_NUM_ERR_INT.
|
||||
*/
|
||||
uint32_t arg_num_err_int_ena:1;
|
||||
uint32_t reserved_5:27;
|
||||
};
|
||||
uint32_t val;
|
||||
} cordic_io_int_ena_reg_t;
|
||||
|
||||
/** Type of io_int_raw register
|
||||
* Cordic interrupt raw signal status register.
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** cal_done_int_raw : R/SS/WTC; bitpos: [0]; default: 0;
|
||||
* The raw interrupt status of CAL_DONE_INT.
|
||||
*/
|
||||
uint32_t cal_done_int_raw:1;
|
||||
/** dma_all_cal_done_int_raw : R/SS/WTC; bitpos: [1]; default: 0;
|
||||
* The raw interrupt status of DMA_ALL_CAL_DONE_INT.
|
||||
*/
|
||||
uint32_t dma_all_cal_done_int_raw:1;
|
||||
/** out_afifo_wovf_int_raw : R/SS/WTC; bitpos: [2]; default: 0;
|
||||
* The raw interrupt status of OUT_AFIFO_WOVF_INT.
|
||||
*/
|
||||
uint32_t out_afifo_wovf_int_raw:1;
|
||||
/** in_afifo_rudf_int_raw : R/SS/WTC; bitpos: [3]; default: 0;
|
||||
* The raw interrupt status of IN_AFIFO_RUDF_INT.
|
||||
*/
|
||||
uint32_t in_afifo_rudf_int_raw:1;
|
||||
/** arg_num_err_int_raw : R/SS/WTC; bitpos: [4]; default: 0;
|
||||
* The raw interrupt status of ARG_NUM_ERR_INT.
|
||||
*/
|
||||
uint32_t arg_num_err_int_raw:1;
|
||||
uint32_t reserved_5:27;
|
||||
};
|
||||
uint32_t val;
|
||||
} cordic_io_int_raw_reg_t;
|
||||
|
||||
/** Type of io_int_st register
|
||||
* Cordic interrupt signal status register.
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** cal_done_int_st : RO; bitpos: [0]; default: 0;
|
||||
* The masked interrupt status of CAL_DONE_INT.
|
||||
*/
|
||||
uint32_t cal_done_int_st:1;
|
||||
/** dma_all_cal_done_int_st : RO; bitpos: [1]; default: 0;
|
||||
* The masked interrupt status of DMA_ALL_CAL_DONE_INT.
|
||||
*/
|
||||
uint32_t dma_all_cal_done_int_st:1;
|
||||
/** out_afifo_wovf_int_st : RO; bitpos: [2]; default: 0;
|
||||
* The masked interrupt status of OUT_AFIFO_WOVF_INT.
|
||||
*/
|
||||
uint32_t out_afifo_wovf_int_st:1;
|
||||
/** in_afifo_rudf_int_st : RO; bitpos: [3]; default: 0;
|
||||
* The masked interrupt status of IN_AFIFO_RUDF_INT.
|
||||
*/
|
||||
uint32_t in_afifo_rudf_int_st:1;
|
||||
/** arg_num_err_int_st : RO; bitpos: [4]; default: 0;
|
||||
* The masked interrupt status of ARG_NUM_ERR_INT.
|
||||
*/
|
||||
uint32_t arg_num_err_int_st:1;
|
||||
uint32_t reserved_5:27;
|
||||
};
|
||||
uint32_t val;
|
||||
} cordic_io_int_st_reg_t;
|
||||
|
||||
/** Type of io_int_clr register
|
||||
* Cordic interrupt clear signal configuration register.
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** cal_done_int_clr : WT; bitpos: [0]; default: 0;
|
||||
* Write 1 to clear CAL_DONE_INT.
|
||||
*/
|
||||
uint32_t cal_done_int_clr:1;
|
||||
/** dma_all_cal_done_int_clr : WT; bitpos: [1]; default: 0;
|
||||
* Write 1 to clear DMA_ALL_CAL_DONE_INT.
|
||||
*/
|
||||
uint32_t dma_all_cal_done_int_clr:1;
|
||||
/** out_afifo_wovf_int_clr : WT; bitpos: [2]; default: 0;
|
||||
* Write 1 to clear OUT_AFIFO_WOVF_INT.
|
||||
*/
|
||||
uint32_t out_afifo_wovf_int_clr:1;
|
||||
/** in_afifo_rudf_int_clr : WT; bitpos: [3]; default: 0;
|
||||
* Write 1 to clear IN_AFIFO_RUDF_INT.
|
||||
*/
|
||||
uint32_t in_afifo_rudf_int_clr:1;
|
||||
/** arg_num_err_int_clr : WT; bitpos: [4]; default: 0;
|
||||
* Write 1 to clear ARG_NUM_ERR_INT.
|
||||
*/
|
||||
uint32_t arg_num_err_int_clr:1;
|
||||
uint32_t reserved_5:27;
|
||||
};
|
||||
uint32_t val;
|
||||
} cordic_io_int_clr_reg_t;
|
||||
|
||||
|
||||
/** Group: CORDIC FIFO Configuration */
|
||||
/** Type of fifo_cfg register
|
||||
* Cordic FIFO configuration register.
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** infifo_reset : WT; bitpos: [0]; default: 0;
|
||||
* infifo_reset_register
|
||||
*/
|
||||
uint32_t infifo_reset:1;
|
||||
/** outfifo_reset : WT; bitpos: [1]; default: 0;
|
||||
* outfifo_reset_register
|
||||
*/
|
||||
uint32_t outfifo_reset:1;
|
||||
uint32_t reserved_2:30;
|
||||
};
|
||||
uint32_t val;
|
||||
} cordic_fifo_cfg_reg_t;
|
||||
|
||||
|
||||
/** Group: CORDIC Clock Configuration */
|
||||
/** Type of clk register
|
||||
* Cordic clk configuration register.
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
uint32_t reserved_0:31;
|
||||
/** clk_en : R/W; bitpos: [31]; default: 0;
|
||||
* Force clock on for this register file
|
||||
*/
|
||||
uint32_t clk_en:1;
|
||||
};
|
||||
uint32_t val;
|
||||
} cordic_clk_reg_t;
|
||||
|
||||
|
||||
/** Group: CORDIC Version Register */
|
||||
/** Type of version register
|
||||
* Version register.
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** date : R/W; bitpos: [27:0]; default: 37818960;
|
||||
* Version of this register file
|
||||
*/
|
||||
uint32_t date:28;
|
||||
uint32_t reserved_28:4;
|
||||
};
|
||||
uint32_t val;
|
||||
} cordic_version_reg_t;
|
||||
|
||||
|
||||
typedef struct {
|
||||
volatile cordic_csr_cfg_reg_t csr_cfg;
|
||||
volatile cordic_arg1_reg_t arg1;
|
||||
volatile cordic_arg2_reg_t arg2;
|
||||
volatile cordic_res1_reg_t res1;
|
||||
volatile cordic_res2_reg_t res2;
|
||||
uint32_t reserved_014[5];
|
||||
volatile cordic_io_int_ena_reg_t io_int_ena;
|
||||
volatile cordic_io_int_raw_reg_t io_int_raw;
|
||||
volatile cordic_io_int_st_reg_t io_int_st;
|
||||
volatile cordic_io_int_clr_reg_t io_int_clr;
|
||||
volatile cordic_fifo_cfg_reg_t fifo_cfg;
|
||||
volatile cordic_clk_reg_t clk;
|
||||
volatile cordic_version_reg_t version;
|
||||
} cordic_dev_t;
|
||||
|
||||
|
||||
#ifndef __cplusplus
|
||||
_Static_assert(sizeof(cordic_dev_t) == 0x44, "Invalid size of cordic_dev_t structure");
|
||||
#endif
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
1584
components/soc/esp32s31/register/soc/cpu_apm_reg.h
Normal file
1584
components/soc/esp32s31/register/soc/cpu_apm_reg.h
Normal file
File diff suppressed because it is too large
Load Diff
612
components/soc/esp32s31/register/soc/cpu_apm_struct.h
Normal file
612
components/soc/esp32s31/register/soc/cpu_apm_struct.h
Normal file
@@ -0,0 +1,612 @@
|
||||
/**
|
||||
* SPDX-FileCopyrightText: 2025 Espressif Systems (Shanghai) CO LTD
|
||||
*
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
*/
|
||||
#pragma once
|
||||
|
||||
#include <stdint.h>
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
/** Group: Region filter enable register */
|
||||
/** Type of region_filter_en register
|
||||
* Region filter enable register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** region_filter_en : R/W; bitpos: [7:0]; default: 1;
|
||||
* Configure bit $n (0-7) to enable region $n.
|
||||
* 0: disable
|
||||
* 1: enable
|
||||
*/
|
||||
uint32_t region_filter_en:8;
|
||||
uint32_t reserved_8:24;
|
||||
};
|
||||
uint32_t val;
|
||||
} cpu_apm_region_filter_en_reg_t;
|
||||
|
||||
|
||||
/** Group: Region address register */
|
||||
/** Type of regionn_addr_start register
|
||||
* Region address register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** regionn_addr_start_l : HRO; bitpos: [12:0]; default: 0;
|
||||
* Low 12 bit, start address of region n.
|
||||
*/
|
||||
uint32_t regionn_addr_start_l:13;
|
||||
/** regionn_addr_start : R/W; bitpos: [28:13]; default: 0;
|
||||
* Configures start address of region n.
|
||||
*/
|
||||
uint32_t regionn_addr_start:16;
|
||||
/** regionn_addr_start_h : HRO; bitpos: [31:29]; default: 2;
|
||||
* High 13 bit, start address of region n.
|
||||
*/
|
||||
uint32_t regionn_addr_start_h:3;
|
||||
};
|
||||
uint32_t val;
|
||||
} cpu_apm_regionn_addr_start_reg_t;
|
||||
|
||||
/** Type of regionn_addr_end register
|
||||
* Region address register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** regionn_addr_end_l : HRO; bitpos: [12:0]; default: 8191;
|
||||
* Low 12 bit, end address of region n.
|
||||
*/
|
||||
uint32_t regionn_addr_end_l:13;
|
||||
/** regionn_addr_end : R/W; bitpos: [28:13]; default: 65535;
|
||||
* Configures end address of region n.
|
||||
*/
|
||||
uint32_t regionn_addr_end:16;
|
||||
/** regionn_addr_end_h : HRO; bitpos: [31:29]; default: 2;
|
||||
* High 13 bit, end address of region n.
|
||||
*/
|
||||
uint32_t regionn_addr_end_h:3;
|
||||
};
|
||||
uint32_t val;
|
||||
} cpu_apm_regionn_addr_end_reg_t;
|
||||
|
||||
|
||||
/** Group: Region access authority attribute register */
|
||||
/** Type of regionn_attr register
|
||||
* Region access authority attribute register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** regionn_r0_x : R/W; bitpos: [0]; default: 0;
|
||||
* Configures the execution authority of REE_MODE 0 in region n.
|
||||
*/
|
||||
uint32_t regionn_r0_x:1;
|
||||
/** regionn_r0_w : R/W; bitpos: [1]; default: 0;
|
||||
* Configures the write authority of REE_MODE 0 in region n.
|
||||
*/
|
||||
uint32_t regionn_r0_w:1;
|
||||
/** regionn_r0_r : R/W; bitpos: [2]; default: 0;
|
||||
* Configures the read authority of REE_MODE 0 in region n.
|
||||
*/
|
||||
uint32_t regionn_r0_r:1;
|
||||
uint32_t reserved_3:1;
|
||||
/** regionn_r1_x : R/W; bitpos: [4]; default: 0;
|
||||
* Configures the execution authority of REE_MODE 1 in region n.
|
||||
*/
|
||||
uint32_t regionn_r1_x:1;
|
||||
/** regionn_r1_w : R/W; bitpos: [5]; default: 0;
|
||||
* Configures the write authority of REE_MODE 1 in region n.
|
||||
*/
|
||||
uint32_t regionn_r1_w:1;
|
||||
/** regionn_r1_r : R/W; bitpos: [6]; default: 0;
|
||||
* Configures the read authority of REE_MODE 1 in region n.
|
||||
*/
|
||||
uint32_t regionn_r1_r:1;
|
||||
uint32_t reserved_7:1;
|
||||
/** regionn_r2_x : R/W; bitpos: [8]; default: 0;
|
||||
* Configures the execution authority of REE_MODE 2 in region n.
|
||||
*/
|
||||
uint32_t regionn_r2_x:1;
|
||||
/** regionn_r2_w : R/W; bitpos: [9]; default: 0;
|
||||
* Configures the write authority of REE_MODE 2 in region n.
|
||||
*/
|
||||
uint32_t regionn_r2_w:1;
|
||||
/** regionn_r2_r : R/W; bitpos: [10]; default: 0;
|
||||
* Configures the read authority of REE_MODE 2 in region n.
|
||||
*/
|
||||
uint32_t regionn_r2_r:1;
|
||||
uint32_t reserved_11:1;
|
||||
/** regionn_tee_x : R/W; bitpos: [12]; default: 1;
|
||||
* Configures the execution authority of TEE_MODE in region n.
|
||||
*/
|
||||
uint32_t regionn_tee_x:1;
|
||||
/** regionn_tee_w : R/W; bitpos: [13]; default: 1;
|
||||
* Configures the write authority of TEE_MODE in region n.
|
||||
*/
|
||||
uint32_t regionn_tee_w:1;
|
||||
/** regionn_tee_r : R/W; bitpos: [14]; default: 1;
|
||||
* Configures the read authority of TEE_MODE in region n.
|
||||
*/
|
||||
uint32_t regionn_tee_r:1;
|
||||
uint32_t reserved_15:1;
|
||||
/** regionn_lock : R/W; bitpos: [16]; default: 0;
|
||||
* Set 1 to lock region0 configuration
|
||||
*/
|
||||
uint32_t regionn_lock:1;
|
||||
uint32_t reserved_17:15;
|
||||
};
|
||||
uint32_t val;
|
||||
} cpu_apm_regionn_attr_reg_t;
|
||||
|
||||
|
||||
/** Group: function control register */
|
||||
/** Type of func_ctrl register
|
||||
* APM function control register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** m0_func_en : R/W; bitpos: [0]; default: 1;
|
||||
* PMS M0 function enable
|
||||
*/
|
||||
uint32_t m0_func_en:1;
|
||||
/** m1_func_en : R/W; bitpos: [1]; default: 1;
|
||||
* PMS M1 function enable
|
||||
*/
|
||||
uint32_t m1_func_en:1;
|
||||
/** m2_func_en : R/W; bitpos: [2]; default: 1;
|
||||
* PMS M2 function enable
|
||||
*/
|
||||
uint32_t m2_func_en:1;
|
||||
/** m3_func_en : R/W; bitpos: [3]; default: 1;
|
||||
* PMS M3 function enable
|
||||
*/
|
||||
uint32_t m3_func_en:1;
|
||||
uint32_t reserved_4:28;
|
||||
};
|
||||
uint32_t val;
|
||||
} cpu_apm_func_ctrl_reg_t;
|
||||
|
||||
|
||||
/** Group: M0 status register */
|
||||
/** Type of m0_status register
|
||||
* M0 status register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** m0_exception_status : RO; bitpos: [1:0]; default: 0;
|
||||
* Represents exception status.
|
||||
* bit0: 1 represents authority_exception
|
||||
* bit1: 1 represents space_exception
|
||||
*/
|
||||
uint32_t m0_exception_status:2;
|
||||
uint32_t reserved_2:30;
|
||||
};
|
||||
uint32_t val;
|
||||
} cpu_apm_m0_status_reg_t;
|
||||
|
||||
|
||||
/** Group: M0 status clear register */
|
||||
/** Type of m0_status_clr register
|
||||
* M0 status clear register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** m0_exception_status_clr : WT; bitpos: [0]; default: 0;
|
||||
* Configures to clear exception status.
|
||||
*/
|
||||
uint32_t m0_exception_status_clr:1;
|
||||
uint32_t reserved_1:31;
|
||||
};
|
||||
uint32_t val;
|
||||
} cpu_apm_m0_status_clr_reg_t;
|
||||
|
||||
|
||||
/** Group: M0 exception_info0 register */
|
||||
/** Type of m0_exception_info0 register
|
||||
* M0 exception_info0 register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** m0_exception_region : RO; bitpos: [7:0]; default: 0;
|
||||
* Represents exception region.
|
||||
*/
|
||||
uint32_t m0_exception_region:8;
|
||||
uint32_t reserved_8:8;
|
||||
/** m0_exception_mode : RO; bitpos: [17:16]; default: 0;
|
||||
* Represents exception mode.
|
||||
*/
|
||||
uint32_t m0_exception_mode:2;
|
||||
/** m0_exception_id : RO; bitpos: [22:18]; default: 0;
|
||||
* Represents exception id information.
|
||||
*/
|
||||
uint32_t m0_exception_id:5;
|
||||
uint32_t reserved_23:9;
|
||||
};
|
||||
uint32_t val;
|
||||
} cpu_apm_m0_exception_info0_reg_t;
|
||||
|
||||
|
||||
/** Group: M0 exception_info1 register */
|
||||
/** Type of m0_exception_info1 register
|
||||
* M0 exception_info1 register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** m0_exception_addr : RO; bitpos: [31:0]; default: 0;
|
||||
* Represents exception addr.
|
||||
*/
|
||||
uint32_t m0_exception_addr:32;
|
||||
};
|
||||
uint32_t val;
|
||||
} cpu_apm_m0_exception_info1_reg_t;
|
||||
|
||||
|
||||
/** Group: M1 status register */
|
||||
/** Type of m1_status register
|
||||
* M1 status register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** m1_exception_status : RO; bitpos: [1:0]; default: 0;
|
||||
* Represents exception status.
|
||||
* bit0: 1 represents authority_exception
|
||||
* bit1: 1 represents space_exception
|
||||
*/
|
||||
uint32_t m1_exception_status:2;
|
||||
uint32_t reserved_2:30;
|
||||
};
|
||||
uint32_t val;
|
||||
} cpu_apm_m1_status_reg_t;
|
||||
|
||||
|
||||
/** Group: M1 status clear register */
|
||||
/** Type of m1_status_clr register
|
||||
* M1 status clear register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** m1_exception_status_clr : WT; bitpos: [0]; default: 0;
|
||||
* Configures to clear exception status.
|
||||
*/
|
||||
uint32_t m1_exception_status_clr:1;
|
||||
uint32_t reserved_1:31;
|
||||
};
|
||||
uint32_t val;
|
||||
} cpu_apm_m1_status_clr_reg_t;
|
||||
|
||||
|
||||
/** Group: M1 exception_info0 register */
|
||||
/** Type of m1_exception_info0 register
|
||||
* M1 exception_info0 register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** m1_exception_region : RO; bitpos: [7:0]; default: 0;
|
||||
* Represents exception region.
|
||||
*/
|
||||
uint32_t m1_exception_region:8;
|
||||
uint32_t reserved_8:8;
|
||||
/** m1_exception_mode : RO; bitpos: [17:16]; default: 0;
|
||||
* Represents exception mode.
|
||||
*/
|
||||
uint32_t m1_exception_mode:2;
|
||||
/** m1_exception_id : RO; bitpos: [22:18]; default: 0;
|
||||
* Represents exception id information.
|
||||
*/
|
||||
uint32_t m1_exception_id:5;
|
||||
uint32_t reserved_23:9;
|
||||
};
|
||||
uint32_t val;
|
||||
} cpu_apm_m1_exception_info0_reg_t;
|
||||
|
||||
|
||||
/** Group: M1 exception_info1 register */
|
||||
/** Type of m1_exception_info1 register
|
||||
* M1 exception_info1 register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** m1_exception_addr : RO; bitpos: [31:0]; default: 0;
|
||||
* Represents exception addr.
|
||||
*/
|
||||
uint32_t m1_exception_addr:32;
|
||||
};
|
||||
uint32_t val;
|
||||
} cpu_apm_m1_exception_info1_reg_t;
|
||||
|
||||
|
||||
/** Group: M2 status register */
|
||||
/** Type of m2_status register
|
||||
* M2 status register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** m2_exception_status : RO; bitpos: [1:0]; default: 0;
|
||||
* Represents exception status.
|
||||
* bit0: 1 represents authority_exception
|
||||
* bit1: 1 represents space_exception
|
||||
*/
|
||||
uint32_t m2_exception_status:2;
|
||||
uint32_t reserved_2:30;
|
||||
};
|
||||
uint32_t val;
|
||||
} cpu_apm_m2_status_reg_t;
|
||||
|
||||
|
||||
/** Group: M2 status clear register */
|
||||
/** Type of m2_status_clr register
|
||||
* M2 status clear register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** m2_exception_status_clr : WT; bitpos: [0]; default: 0;
|
||||
* Configures to clear exception status.
|
||||
*/
|
||||
uint32_t m2_exception_status_clr:1;
|
||||
uint32_t reserved_1:31;
|
||||
};
|
||||
uint32_t val;
|
||||
} cpu_apm_m2_status_clr_reg_t;
|
||||
|
||||
|
||||
/** Group: M2 exception_info0 register */
|
||||
/** Type of m2_exception_info0 register
|
||||
* M2 exception_info0 register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** m2_exception_region : RO; bitpos: [7:0]; default: 0;
|
||||
* Represents exception region.
|
||||
*/
|
||||
uint32_t m2_exception_region:8;
|
||||
uint32_t reserved_8:8;
|
||||
/** m2_exception_mode : RO; bitpos: [17:16]; default: 0;
|
||||
* Represents exception mode.
|
||||
*/
|
||||
uint32_t m2_exception_mode:2;
|
||||
/** m2_exception_id : RO; bitpos: [22:18]; default: 0;
|
||||
* Represents exception id information.
|
||||
*/
|
||||
uint32_t m2_exception_id:5;
|
||||
uint32_t reserved_23:9;
|
||||
};
|
||||
uint32_t val;
|
||||
} cpu_apm_m2_exception_info0_reg_t;
|
||||
|
||||
|
||||
/** Group: M2 exception_info1 register */
|
||||
/** Type of m2_exception_info1 register
|
||||
* M2 exception_info1 register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** m2_exception_addr : RO; bitpos: [31:0]; default: 0;
|
||||
* Represents exception addr.
|
||||
*/
|
||||
uint32_t m2_exception_addr:32;
|
||||
};
|
||||
uint32_t val;
|
||||
} cpu_apm_m2_exception_info1_reg_t;
|
||||
|
||||
|
||||
/** Group: M3 status register */
|
||||
/** Type of m3_status register
|
||||
* M3 status register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** m3_exception_status : RO; bitpos: [1:0]; default: 0;
|
||||
* Represents exception status.
|
||||
* bit0: 1 represents authority_exception
|
||||
* bit1: 1 represents space_exception
|
||||
*/
|
||||
uint32_t m3_exception_status:2;
|
||||
uint32_t reserved_2:30;
|
||||
};
|
||||
uint32_t val;
|
||||
} cpu_apm_m3_status_reg_t;
|
||||
|
||||
|
||||
/** Group: M3 status clear register */
|
||||
/** Type of m3_status_clr register
|
||||
* M3 status clear register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** m3_exception_status_clr : WT; bitpos: [0]; default: 0;
|
||||
* Configures to clear exception status.
|
||||
*/
|
||||
uint32_t m3_exception_status_clr:1;
|
||||
uint32_t reserved_1:31;
|
||||
};
|
||||
uint32_t val;
|
||||
} cpu_apm_m3_status_clr_reg_t;
|
||||
|
||||
|
||||
/** Group: M3 exception_info0 register */
|
||||
/** Type of m3_exception_info0 register
|
||||
* M3 exception_info0 register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** m3_exception_region : RO; bitpos: [7:0]; default: 0;
|
||||
* Represents exception region.
|
||||
*/
|
||||
uint32_t m3_exception_region:8;
|
||||
uint32_t reserved_8:8;
|
||||
/** m3_exception_mode : RO; bitpos: [17:16]; default: 0;
|
||||
* Represents exception mode.
|
||||
*/
|
||||
uint32_t m3_exception_mode:2;
|
||||
/** m3_exception_id : RO; bitpos: [22:18]; default: 0;
|
||||
* Represents exception id information.
|
||||
*/
|
||||
uint32_t m3_exception_id:5;
|
||||
uint32_t reserved_23:9;
|
||||
};
|
||||
uint32_t val;
|
||||
} cpu_apm_m3_exception_info0_reg_t;
|
||||
|
||||
|
||||
/** Group: M3 exception_info1 register */
|
||||
/** Type of m3_exception_info1 register
|
||||
* M3 exception_info1 register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** m3_exception_addr : RO; bitpos: [31:0]; default: 0;
|
||||
* Represents exception addr.
|
||||
*/
|
||||
uint32_t m3_exception_addr:32;
|
||||
};
|
||||
uint32_t val;
|
||||
} cpu_apm_m3_exception_info1_reg_t;
|
||||
|
||||
|
||||
/** Group: APM interrupt enable register */
|
||||
/** Type of int_en register
|
||||
* APM interrupt enable register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** m0_apm_int_en : R/W; bitpos: [0]; default: 0;
|
||||
* Configures to enable APM M0 interrupt.
|
||||
* 0: disable
|
||||
* 1: enable
|
||||
*/
|
||||
uint32_t m0_apm_int_en:1;
|
||||
/** m1_apm_int_en : R/W; bitpos: [1]; default: 0;
|
||||
* Configures to enable APM M1 interrupt.
|
||||
* 0: disable
|
||||
* 1: enable
|
||||
*/
|
||||
uint32_t m1_apm_int_en:1;
|
||||
/** m2_apm_int_en : R/W; bitpos: [2]; default: 0;
|
||||
* Configures to enable APM M2 interrupt.
|
||||
* 0: disable
|
||||
* 1: enable
|
||||
*/
|
||||
uint32_t m2_apm_int_en:1;
|
||||
/** m3_apm_int_en : R/W; bitpos: [3]; default: 0;
|
||||
* Configures to enable APM M3 interrupt.
|
||||
* 0: disable
|
||||
* 1: enable
|
||||
*/
|
||||
uint32_t m3_apm_int_en:1;
|
||||
uint32_t reserved_4:28;
|
||||
};
|
||||
uint32_t val;
|
||||
} cpu_apm_int_en_reg_t;
|
||||
|
||||
/** Type of bus_err_conf register
|
||||
* APM interrupt enable register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** bus_err_resp_en : R/W; bitpos: [0]; default: 0;
|
||||
* Configures whether return error response to cpu when access blocked
|
||||
* 0: disable error response
|
||||
* 1: enable error response
|
||||
*/
|
||||
uint32_t bus_err_resp_en:1;
|
||||
uint32_t reserved_1:31;
|
||||
};
|
||||
uint32_t val;
|
||||
} cpu_apm_bus_err_conf_reg_t;
|
||||
|
||||
|
||||
/** Group: Clock gating register */
|
||||
/** Type of clock_gate register
|
||||
* Clock gating register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** clk_en : R/W; bitpos: [0]; default: 1;
|
||||
* Configures whether to keep the clock always on.
|
||||
* 0: enable automatic clock gating
|
||||
* 1: keep the clock always on
|
||||
*/
|
||||
uint32_t clk_en:1;
|
||||
uint32_t reserved_1:31;
|
||||
};
|
||||
uint32_t val;
|
||||
} cpu_apm_clock_gate_reg_t;
|
||||
|
||||
|
||||
/** Group: Version control register */
|
||||
/** Type of date register
|
||||
* Version control register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** date : R/W; bitpos: [27:0]; default: 38822496;
|
||||
* Version control register.
|
||||
*/
|
||||
uint32_t date:28;
|
||||
uint32_t reserved_28:4;
|
||||
};
|
||||
uint32_t val;
|
||||
} cpu_apm_date_reg_t;
|
||||
|
||||
|
||||
typedef struct {
|
||||
volatile cpu_apm_region_filter_en_reg_t region_filter_en;
|
||||
volatile cpu_apm_regionn_addr_start_reg_t region0_addr_start;
|
||||
volatile cpu_apm_regionn_addr_end_reg_t region0_addr_end;
|
||||
volatile cpu_apm_regionn_attr_reg_t region0_attr;
|
||||
volatile cpu_apm_regionn_addr_start_reg_t region1_addr_start;
|
||||
volatile cpu_apm_regionn_addr_end_reg_t region1_addr_end;
|
||||
volatile cpu_apm_regionn_attr_reg_t region1_attr;
|
||||
volatile cpu_apm_regionn_addr_start_reg_t region2_addr_start;
|
||||
volatile cpu_apm_regionn_addr_end_reg_t region2_addr_end;
|
||||
volatile cpu_apm_regionn_attr_reg_t region2_attr;
|
||||
volatile cpu_apm_regionn_addr_start_reg_t region3_addr_start;
|
||||
volatile cpu_apm_regionn_addr_end_reg_t region3_addr_end;
|
||||
volatile cpu_apm_regionn_attr_reg_t region3_attr;
|
||||
volatile cpu_apm_regionn_addr_start_reg_t region4_addr_start;
|
||||
volatile cpu_apm_regionn_addr_end_reg_t region4_addr_end;
|
||||
volatile cpu_apm_regionn_attr_reg_t region4_attr;
|
||||
volatile cpu_apm_regionn_addr_start_reg_t region5_addr_start;
|
||||
volatile cpu_apm_regionn_addr_end_reg_t region5_addr_end;
|
||||
volatile cpu_apm_regionn_attr_reg_t region5_attr;
|
||||
volatile cpu_apm_regionn_addr_start_reg_t region6_addr_start;
|
||||
volatile cpu_apm_regionn_addr_end_reg_t region6_addr_end;
|
||||
volatile cpu_apm_regionn_attr_reg_t region6_attr;
|
||||
volatile cpu_apm_regionn_addr_start_reg_t region7_addr_start;
|
||||
volatile cpu_apm_regionn_addr_end_reg_t region7_addr_end;
|
||||
volatile cpu_apm_regionn_attr_reg_t region7_attr;
|
||||
uint32_t reserved_064[24];
|
||||
volatile cpu_apm_func_ctrl_reg_t func_ctrl;
|
||||
volatile cpu_apm_m0_status_reg_t m0_status;
|
||||
volatile cpu_apm_m0_status_clr_reg_t m0_status_clr;
|
||||
volatile cpu_apm_m0_exception_info0_reg_t m0_exception_info0;
|
||||
volatile cpu_apm_m0_exception_info1_reg_t m0_exception_info1;
|
||||
volatile cpu_apm_m1_status_reg_t m1_status;
|
||||
volatile cpu_apm_m1_status_clr_reg_t m1_status_clr;
|
||||
volatile cpu_apm_m1_exception_info0_reg_t m1_exception_info0;
|
||||
volatile cpu_apm_m1_exception_info1_reg_t m1_exception_info1;
|
||||
volatile cpu_apm_m2_status_reg_t m2_status;
|
||||
volatile cpu_apm_m2_status_clr_reg_t m2_status_clr;
|
||||
volatile cpu_apm_m2_exception_info0_reg_t m2_exception_info0;
|
||||
volatile cpu_apm_m2_exception_info1_reg_t m2_exception_info1;
|
||||
volatile cpu_apm_m3_status_reg_t m3_status;
|
||||
volatile cpu_apm_m3_status_clr_reg_t m3_status_clr;
|
||||
volatile cpu_apm_m3_exception_info0_reg_t m3_exception_info0;
|
||||
volatile cpu_apm_m3_exception_info1_reg_t m3_exception_info1;
|
||||
uint32_t reserved_108[4];
|
||||
volatile cpu_apm_int_en_reg_t int_en;
|
||||
volatile cpu_apm_bus_err_conf_reg_t bus_err_conf;
|
||||
uint32_t reserved_120[182];
|
||||
volatile cpu_apm_clock_gate_reg_t clock_gate;
|
||||
volatile cpu_apm_date_reg_t date;
|
||||
} cpu_apm_dev_t;
|
||||
|
||||
|
||||
#ifndef __cplusplus
|
||||
_Static_assert(sizeof(cpu_apm_dev_t) == 0x400, "Invalid size of cpu_apm_dev_t structure");
|
||||
#endif
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
466
components/soc/esp32s31/register/soc/dac_reg.h
Normal file
466
components/soc/esp32s31/register/soc/dac_reg.h
Normal file
@@ -0,0 +1,466 @@
|
||||
/**
|
||||
* SPDX-FileCopyrightText: 2025 Espressif Systems (Shanghai) CO LTD
|
||||
*
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
*/
|
||||
#pragma once
|
||||
|
||||
#include <stdint.h>
|
||||
#include "soc/soc.h"
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
/** DAC_PAD_CFG_REG register
|
||||
* configure dac pad register
|
||||
*/
|
||||
#define DAC_PAD_CFG_REG (DR_REG_DAC_BASE + 0x0)
|
||||
/** DAC_HS_MODE_PAD_0 : R/W; bitpos: [0]; default: 0;
|
||||
* 1 to let DAC PAD 0 enter High speed mode
|
||||
*/
|
||||
#define DAC_HS_MODE_PAD_0 (BIT(0))
|
||||
#define DAC_HS_MODE_PAD_0_M (DAC_HS_MODE_PAD_0_V << DAC_HS_MODE_PAD_0_S)
|
||||
#define DAC_HS_MODE_PAD_0_V 0x00000001U
|
||||
#define DAC_HS_MODE_PAD_0_S 0
|
||||
/** DAC_XPD_PAD_0 : R/W; bitpos: [1]; default: 0;
|
||||
* 1 to power on DAC PAD 0
|
||||
*/
|
||||
#define DAC_XPD_PAD_0 (BIT(1))
|
||||
#define DAC_XPD_PAD_0_M (DAC_XPD_PAD_0_V << DAC_XPD_PAD_0_S)
|
||||
#define DAC_XPD_PAD_0_V 0x00000001U
|
||||
#define DAC_XPD_PAD_0_S 1
|
||||
/** DAC_EN_ADC_MUX_PAD_0 : R/W; bitpos: [2]; default: 0;
|
||||
* 1 to enable adc mux for DAC PAD 0
|
||||
*/
|
||||
#define DAC_EN_ADC_MUX_PAD_0 (BIT(2))
|
||||
#define DAC_EN_ADC_MUX_PAD_0_M (DAC_EN_ADC_MUX_PAD_0_V << DAC_EN_ADC_MUX_PAD_0_S)
|
||||
#define DAC_EN_ADC_MUX_PAD_0_V 0x00000001U
|
||||
#define DAC_EN_ADC_MUX_PAD_0_S 2
|
||||
/** DAC_DSAMP_LS_PAD_0 : R/W; bitpos: [3]; default: 0;
|
||||
* 1 to start sample and hold mode for DAC PAD 0
|
||||
*/
|
||||
#define DAC_DSAMP_LS_PAD_0 (BIT(3))
|
||||
#define DAC_DSAMP_LS_PAD_0_M (DAC_DSAMP_LS_PAD_0_V << DAC_DSAMP_LS_PAD_0_S)
|
||||
#define DAC_DSAMP_LS_PAD_0_V 0x00000001U
|
||||
#define DAC_DSAMP_LS_PAD_0_S 3
|
||||
/** DAC_DCAL_LS_PAD_0 : R/W; bitpos: [4]; default: 0;
|
||||
* 1 to Calibrate the buffer of DAC PAD 0 (DBUF of pad 1 must be 1 during this
|
||||
* operation)
|
||||
*/
|
||||
#define DAC_DCAL_LS_PAD_0 (BIT(4))
|
||||
#define DAC_DCAL_LS_PAD_0_M (DAC_DCAL_LS_PAD_0_V << DAC_DCAL_LS_PAD_0_S)
|
||||
#define DAC_DCAL_LS_PAD_0_V 0x00000001U
|
||||
#define DAC_DCAL_LS_PAD_0_S 4
|
||||
/** DAC_DBUF_LS_PAD_0 : R/W; bitpos: [5]; default: 0;
|
||||
* 1 to turn on the buffer of DAC PAD 0
|
||||
*/
|
||||
#define DAC_DBUF_LS_PAD_0 (BIT(5))
|
||||
#define DAC_DBUF_LS_PAD_0_M (DAC_DBUF_LS_PAD_0_V << DAC_DBUF_LS_PAD_0_S)
|
||||
#define DAC_DBUF_LS_PAD_0_V 0x00000001U
|
||||
#define DAC_DBUF_LS_PAD_0_S 5
|
||||
/** DAC_ON_LS_PAD_0 : R/W; bitpos: [6]; default: 0;
|
||||
* 1 to turn on the DAC PAD 0 during sample and hold mode
|
||||
*/
|
||||
#define DAC_ON_LS_PAD_0 (BIT(6))
|
||||
#define DAC_ON_LS_PAD_0_M (DAC_ON_LS_PAD_0_V << DAC_ON_LS_PAD_0_S)
|
||||
#define DAC_ON_LS_PAD_0_V 0x00000001U
|
||||
#define DAC_ON_LS_PAD_0_S 6
|
||||
/** DAC_HS_MODE_PAD_1 : R/W; bitpos: [7]; default: 0;
|
||||
* 1 to let DAC PAD 1 enter High speed mode
|
||||
*/
|
||||
#define DAC_HS_MODE_PAD_1 (BIT(7))
|
||||
#define DAC_HS_MODE_PAD_1_M (DAC_HS_MODE_PAD_1_V << DAC_HS_MODE_PAD_1_S)
|
||||
#define DAC_HS_MODE_PAD_1_V 0x00000001U
|
||||
#define DAC_HS_MODE_PAD_1_S 7
|
||||
/** DAC_XPD_PAD_1 : R/W; bitpos: [8]; default: 0;
|
||||
* 1 to power on DAC PAD 1
|
||||
*/
|
||||
#define DAC_XPD_PAD_1 (BIT(8))
|
||||
#define DAC_XPD_PAD_1_M (DAC_XPD_PAD_1_V << DAC_XPD_PAD_1_S)
|
||||
#define DAC_XPD_PAD_1_V 0x00000001U
|
||||
#define DAC_XPD_PAD_1_S 8
|
||||
/** DAC_EN_ADC_MUX_PAD_1 : R/W; bitpos: [9]; default: 0;
|
||||
* 1 to enable adc mux for DAC PAD 1
|
||||
*/
|
||||
#define DAC_EN_ADC_MUX_PAD_1 (BIT(9))
|
||||
#define DAC_EN_ADC_MUX_PAD_1_M (DAC_EN_ADC_MUX_PAD_1_V << DAC_EN_ADC_MUX_PAD_1_S)
|
||||
#define DAC_EN_ADC_MUX_PAD_1_V 0x00000001U
|
||||
#define DAC_EN_ADC_MUX_PAD_1_S 9
|
||||
/** DAC_DSAMP_LS_PAD_1 : R/W; bitpos: [10]; default: 0;
|
||||
* 1 to start sample and hold mode for DAC PAD 1
|
||||
*/
|
||||
#define DAC_DSAMP_LS_PAD_1 (BIT(10))
|
||||
#define DAC_DSAMP_LS_PAD_1_M (DAC_DSAMP_LS_PAD_1_V << DAC_DSAMP_LS_PAD_1_S)
|
||||
#define DAC_DSAMP_LS_PAD_1_V 0x00000001U
|
||||
#define DAC_DSAMP_LS_PAD_1_S 10
|
||||
/** DAC_DCAL_LS_PAD_1 : R/W; bitpos: [11]; default: 0;
|
||||
* 1 to Calibrate the buffer of DAC PAD 1 (DBUF of pad 1 must be 1 during this
|
||||
* operation)
|
||||
*/
|
||||
#define DAC_DCAL_LS_PAD_1 (BIT(11))
|
||||
#define DAC_DCAL_LS_PAD_1_M (DAC_DCAL_LS_PAD_1_V << DAC_DCAL_LS_PAD_1_S)
|
||||
#define DAC_DCAL_LS_PAD_1_V 0x00000001U
|
||||
#define DAC_DCAL_LS_PAD_1_S 11
|
||||
/** DAC_DBUF_LS_PAD_1 : R/W; bitpos: [12]; default: 0;
|
||||
* 1 to turn on the buffer of DAC PAD 1
|
||||
*/
|
||||
#define DAC_DBUF_LS_PAD_1 (BIT(12))
|
||||
#define DAC_DBUF_LS_PAD_1_M (DAC_DBUF_LS_PAD_1_V << DAC_DBUF_LS_PAD_1_S)
|
||||
#define DAC_DBUF_LS_PAD_1_V 0x00000001U
|
||||
#define DAC_DBUF_LS_PAD_1_S 12
|
||||
/** DAC_ON_LS_PAD_1 : R/W; bitpos: [13]; default: 0;
|
||||
* 1 to turn on the DAC PAD 1 during sample and hold mode
|
||||
*/
|
||||
#define DAC_ON_LS_PAD_1 (BIT(13))
|
||||
#define DAC_ON_LS_PAD_1_M (DAC_ON_LS_PAD_1_V << DAC_ON_LS_PAD_1_S)
|
||||
#define DAC_ON_LS_PAD_1_V 0x00000001U
|
||||
#define DAC_ON_LS_PAD_1_S 13
|
||||
/** DAC_DIV_NUM : R/W; bitpos: [29:14]; default: 1;
|
||||
* divide number between clk ls and clk hs
|
||||
*/
|
||||
#define DAC_DIV_NUM 0x0000FFFFU
|
||||
#define DAC_DIV_NUM_M (DAC_DIV_NUM_V << DAC_DIV_NUM_S)
|
||||
#define DAC_DIV_NUM_V 0x0000FFFFU
|
||||
#define DAC_DIV_NUM_S 14
|
||||
/** DAC_DBUF_RANGE_LS_PAD_0 : R/W; bitpos: [30]; default: 0;
|
||||
* 1:when buffer is activated, allow using full code of maximum bitwidth
|
||||
* 0:when buffer is not activated, should always be 0
|
||||
*/
|
||||
#define DAC_DBUF_RANGE_LS_PAD_0 (BIT(30))
|
||||
#define DAC_DBUF_RANGE_LS_PAD_0_M (DAC_DBUF_RANGE_LS_PAD_0_V << DAC_DBUF_RANGE_LS_PAD_0_S)
|
||||
#define DAC_DBUF_RANGE_LS_PAD_0_V 0x00000001U
|
||||
#define DAC_DBUF_RANGE_LS_PAD_0_S 30
|
||||
/** DAC_DBUF_RANGE_LS_PAD_1 : R/W; bitpos: [31]; default: 0;
|
||||
* 1:when buffer is activated, allow using full code of maximum bitwidth
|
||||
* 0:when buffer is not activated, should always be 0
|
||||
*/
|
||||
#define DAC_DBUF_RANGE_LS_PAD_1 (BIT(31))
|
||||
#define DAC_DBUF_RANGE_LS_PAD_1_M (DAC_DBUF_RANGE_LS_PAD_1_V << DAC_DBUF_RANGE_LS_PAD_1_S)
|
||||
#define DAC_DBUF_RANGE_LS_PAD_1_V 0x00000001U
|
||||
#define DAC_DBUF_RANGE_LS_PAD_1_S 31
|
||||
|
||||
/** DAC_CALI_RESULT_REG register
|
||||
* DAC CALI result register
|
||||
*/
|
||||
#define DAC_CALI_RESULT_REG (DR_REG_DAC_BASE + 0x4)
|
||||
/** DAC_CALI_RESULT_PAD_0 : R/W; bitpos: [11:0]; default: 0;
|
||||
* cali result register for pad 0 output
|
||||
*/
|
||||
#define DAC_CALI_RESULT_PAD_0 0x00000FFFU
|
||||
#define DAC_CALI_RESULT_PAD_0_M (DAC_CALI_RESULT_PAD_0_V << DAC_CALI_RESULT_PAD_0_S)
|
||||
#define DAC_CALI_RESULT_PAD_0_V 0x00000FFFU
|
||||
#define DAC_CALI_RESULT_PAD_0_S 0
|
||||
/** DAC_CALI_RESULT_PAD_1 : R/W; bitpos: [23:12]; default: 0;
|
||||
* cali result register for pad 1 output
|
||||
*/
|
||||
#define DAC_CALI_RESULT_PAD_1 0x00000FFFU
|
||||
#define DAC_CALI_RESULT_PAD_1_M (DAC_CALI_RESULT_PAD_1_V << DAC_CALI_RESULT_PAD_1_S)
|
||||
#define DAC_CALI_RESULT_PAD_1_V 0x00000FFFU
|
||||
#define DAC_CALI_RESULT_PAD_1_S 12
|
||||
|
||||
/** DAC_PDMA_CFG_REG register
|
||||
* dac cfg register
|
||||
*/
|
||||
#define DAC_PDMA_CFG_REG (DR_REG_DAC_BASE + 0x8)
|
||||
/** DAC_PDMA_ALTER_MODE : R/W; bitpos: [0]; default: 0;
|
||||
* 1:make rotation between two pads when outputting data of ppdma input path requires
|
||||
* reg_dac_1/0_data_sel = 1
|
||||
* 0:no change
|
||||
*/
|
||||
#define DAC_PDMA_ALTER_MODE (BIT(0))
|
||||
#define DAC_PDMA_ALTER_MODE_M (DAC_PDMA_ALTER_MODE_V << DAC_PDMA_ALTER_MODE_S)
|
||||
#define DAC_PDMA_ALTER_MODE_V 0x00000001U
|
||||
#define DAC_PDMA_ALTER_MODE_S 0
|
||||
/** DAC_PDMA_RESET_FIFO : WT; bitpos: [1]; default: 0;
|
||||
* 1:reset dac fifo
|
||||
* 0:no change
|
||||
*/
|
||||
#define DAC_PDMA_RESET_FIFO (BIT(1))
|
||||
#define DAC_PDMA_RESET_FIFO_M (DAC_PDMA_RESET_FIFO_V << DAC_PDMA_RESET_FIFO_S)
|
||||
#define DAC_PDMA_RESET_FIFO_V 0x00000001U
|
||||
#define DAC_PDMA_RESET_FIFO_S 1
|
||||
/** DAC_PDMA_TRANS : R/W; bitpos: [2]; default: 0;
|
||||
* 1:start transaction for pdma path output
|
||||
* 0:stop transaction for pdma path output
|
||||
*/
|
||||
#define DAC_PDMA_TRANS (BIT(2))
|
||||
#define DAC_PDMA_TRANS_M (DAC_PDMA_TRANS_V << DAC_PDMA_TRANS_S)
|
||||
#define DAC_PDMA_TRANS_V 0x00000001U
|
||||
#define DAC_PDMA_TRANS_S 2
|
||||
|
||||
/** DAC_PDMA_TIMER_CFG_REG register
|
||||
* PDMA path timer register
|
||||
*/
|
||||
#define DAC_PDMA_TIMER_CFG_REG (DR_REG_DAC_BASE + 0xc)
|
||||
/** DAC_PDMA_TIMER_EN : R/W; bitpos: [0]; default: 0;
|
||||
* 1:enables using dac timer to reduce output frequency
|
||||
* 0:no data output
|
||||
*/
|
||||
#define DAC_PDMA_TIMER_EN (BIT(0))
|
||||
#define DAC_PDMA_TIMER_EN_M (DAC_PDMA_TIMER_EN_V << DAC_PDMA_TIMER_EN_S)
|
||||
#define DAC_PDMA_TIMER_EN_V 0x00000001U
|
||||
#define DAC_PDMA_TIMER_EN_S 0
|
||||
/** DAC_PDMA_TIMER_TARGET : R/W; bitpos: [24:1]; default: 2;
|
||||
* dac pdma timer wait target
|
||||
*/
|
||||
#define DAC_PDMA_TIMER_TARGET 0x00FFFFFFU
|
||||
#define DAC_PDMA_TIMER_TARGET_M (DAC_PDMA_TIMER_TARGET_V << DAC_PDMA_TIMER_TARGET_S)
|
||||
#define DAC_PDMA_TIMER_TARGET_V 0x00FFFFFFU
|
||||
#define DAC_PDMA_TIMER_TARGET_S 1
|
||||
|
||||
/** DAC_DATA_OUTPUT_CFG_REG register
|
||||
* dac DATA OUTPUT cfg register
|
||||
*/
|
||||
#define DAC_DATA_OUTPUT_CFG_REG (DR_REG_DAC_BASE + 0x10)
|
||||
/** DAC_PAD_0_DATA_SEL : R/W; bitpos: [0]; default: 0;
|
||||
* 1:output pdma data
|
||||
* 0:output sintx data
|
||||
*/
|
||||
#define DAC_PAD_0_DATA_SEL (BIT(0))
|
||||
#define DAC_PAD_0_DATA_SEL_M (DAC_PAD_0_DATA_SEL_V << DAC_PAD_0_DATA_SEL_S)
|
||||
#define DAC_PAD_0_DATA_SEL_V 0x00000001U
|
||||
#define DAC_PAD_0_DATA_SEL_S 0
|
||||
/** DAC_PAD_1_DATA_SEL : R/W; bitpos: [1]; default: 0;
|
||||
* 1:output pdma data
|
||||
* 0:output sintx data
|
||||
*/
|
||||
#define DAC_PAD_1_DATA_SEL (BIT(1))
|
||||
#define DAC_PAD_1_DATA_SEL_M (DAC_PAD_1_DATA_SEL_V << DAC_PAD_1_DATA_SEL_S)
|
||||
#define DAC_PAD_1_DATA_SEL_V 0x00000001U
|
||||
#define DAC_PAD_1_DATA_SEL_S 1
|
||||
|
||||
/** DAC_SINTX_CFG_REG register
|
||||
* dac rstn register
|
||||
*/
|
||||
#define DAC_SINTX_CFG_REG (DR_REG_DAC_BASE + 0x14)
|
||||
/** DAC_SW_TONE : R/W; bitpos: [0]; default: 0;
|
||||
* 1:enable software adjusting current sintx output data
|
||||
* 0:disable software adjustment
|
||||
*/
|
||||
#define DAC_SW_TONE (BIT(0))
|
||||
#define DAC_SW_TONE_M (DAC_SW_TONE_V << DAC_SW_TONE_S)
|
||||
#define DAC_SW_TONE_V 0x00000001U
|
||||
#define DAC_SW_TONE_S 0
|
||||
/** DAC_SW_FSTEP : R/W; bitpos: [16:1]; default: 1;
|
||||
* software adjust angle velocity foot step for sintx LUT input
|
||||
*/
|
||||
#define DAC_SW_FSTEP 0x0000FFFFU
|
||||
#define DAC_SW_FSTEP_M (DAC_SW_FSTEP_V << DAC_SW_FSTEP_S)
|
||||
#define DAC_SW_FSTEP_V 0x0000FFFFU
|
||||
#define DAC_SW_FSTEP_S 1
|
||||
/** DAC_SCALE_1 : R/W; bitpos: [18:17]; default: 0;
|
||||
* right shift scaling config for LUT output of sintx for pad 0
|
||||
*/
|
||||
#define DAC_SCALE_1 0x00000003U
|
||||
#define DAC_SCALE_1_M (DAC_SCALE_1_V << DAC_SCALE_1_S)
|
||||
#define DAC_SCALE_1_V 0x00000003U
|
||||
#define DAC_SCALE_1_S 17
|
||||
/** DAC_SCALE_2 : R/W; bitpos: [20:19]; default: 0;
|
||||
* software adjust angle velocity foot step for sintx LUT input
|
||||
*/
|
||||
#define DAC_SCALE_2 0x00000003U
|
||||
#define DAC_SCALE_2_M (DAC_SCALE_2_V << DAC_SCALE_2_S)
|
||||
#define DAC_SCALE_2_V 0x00000003U
|
||||
#define DAC_SCALE_2_S 19
|
||||
/** DAC_INV_1 : R/W; bitpos: [22:21]; default: 0;
|
||||
* bit 1: invert the highest bit of output for pad 0
|
||||
* Bit 0: invert the entire output for pad 0
|
||||
*/
|
||||
#define DAC_INV_1 0x00000003U
|
||||
#define DAC_INV_1_M (DAC_INV_1_V << DAC_INV_1_S)
|
||||
#define DAC_INV_1_V 0x00000003U
|
||||
#define DAC_INV_1_S 21
|
||||
/** DAC_INV_2 : R/W; bitpos: [24:23]; default: 0;
|
||||
* bit 1: invert the highest bit of output for pad 1
|
||||
* Bit 0: invert the entire output for pad 1
|
||||
*/
|
||||
#define DAC_INV_2 0x00000003U
|
||||
#define DAC_INV_2_M (DAC_INV_2_V << DAC_INV_2_S)
|
||||
#define DAC_INV_2_V 0x00000003U
|
||||
#define DAC_INV_2_S 23
|
||||
|
||||
/** DAC_SINTX_TIMER_CFG_REG register
|
||||
* SINTX path timer register
|
||||
*/
|
||||
#define DAC_SINTX_TIMER_CFG_REG (DR_REG_DAC_BASE + 0x18)
|
||||
/** DAC_SINTX_TIMER_EN : R/W; bitpos: [0]; default: 0;
|
||||
* 1:enables using dac timer to reduce output frequency
|
||||
* 0:no data output
|
||||
*/
|
||||
#define DAC_SINTX_TIMER_EN (BIT(0))
|
||||
#define DAC_SINTX_TIMER_EN_M (DAC_SINTX_TIMER_EN_V << DAC_SINTX_TIMER_EN_S)
|
||||
#define DAC_SINTX_TIMER_EN_V 0x00000001U
|
||||
#define DAC_SINTX_TIMER_EN_S 0
|
||||
/** DAC_SINTX_TIMER_TARGET : R/W; bitpos: [24:1]; default: 2;
|
||||
* dac sintx timer wait target
|
||||
*/
|
||||
#define DAC_SINTX_TIMER_TARGET 0x00FFFFFFU
|
||||
#define DAC_SINTX_TIMER_TARGET_M (DAC_SINTX_TIMER_TARGET_V << DAC_SINTX_TIMER_TARGET_S)
|
||||
#define DAC_SINTX_TIMER_TARGET_V 0x00FFFFFFU
|
||||
#define DAC_SINTX_TIMER_TARGET_S 1
|
||||
|
||||
/** DAC_SINTX_DATA_REG register
|
||||
* dac output register for sintx path
|
||||
*/
|
||||
#define DAC_SINTX_DATA_REG (DR_REG_DAC_BASE + 0x1c)
|
||||
/** DAC_DC_1 : R/W; bitpos: [11:0]; default: 0;
|
||||
* the data output for DAC PAD0 for sintx path
|
||||
*/
|
||||
#define DAC_DC_1 0x00000FFFU
|
||||
#define DAC_DC_1_M (DAC_DC_1_V << DAC_DC_1_S)
|
||||
#define DAC_DC_1_V 0x00000FFFU
|
||||
#define DAC_DC_1_S 0
|
||||
/** DAC_DC_2 : R/W; bitpos: [23:12]; default: 0;
|
||||
* the data output for DAC PAD1 for sintx path
|
||||
*/
|
||||
#define DAC_DC_2 0x00000FFFU
|
||||
#define DAC_DC_2_M (DAC_DC_2_V << DAC_DC_2_S)
|
||||
#define DAC_DC_2_V 0x00000FFFU
|
||||
#define DAC_DC_2_S 12
|
||||
|
||||
/** DAC_CALI_REG register
|
||||
* cali algorithm register for DAC
|
||||
*/
|
||||
#define DAC_CALI_REG (DR_REG_DAC_BASE + 0x20)
|
||||
/** DAC_CALI_OUT_PAD_0 : RO; bitpos: [0]; default: 0;
|
||||
* cali out from DAC PAD 0
|
||||
*/
|
||||
#define DAC_CALI_OUT_PAD_0 (BIT(0))
|
||||
#define DAC_CALI_OUT_PAD_0_M (DAC_CALI_OUT_PAD_0_V << DAC_CALI_OUT_PAD_0_S)
|
||||
#define DAC_CALI_OUT_PAD_0_V 0x00000001U
|
||||
#define DAC_CALI_OUT_PAD_0_S 0
|
||||
/** DAC_CALI_OUT_PAD_1 : RO; bitpos: [1]; default: 0;
|
||||
* cali out from DAC PAD 1
|
||||
*/
|
||||
#define DAC_CALI_OUT_PAD_1 (BIT(1))
|
||||
#define DAC_CALI_OUT_PAD_1_M (DAC_CALI_OUT_PAD_1_V << DAC_CALI_OUT_PAD_1_S)
|
||||
#define DAC_CALI_OUT_PAD_1_V 0x00000001U
|
||||
#define DAC_CALI_OUT_PAD_1_S 1
|
||||
|
||||
/** DAC_SAMPLE_WAIT_CFG_REG register
|
||||
* cali sample phase duration register
|
||||
*/
|
||||
#define DAC_SAMPLE_WAIT_CFG_REG (DR_REG_DAC_BASE + 0x24)
|
||||
/** DAC_WAIT_TARGET_SAMPLE_PAD_0 : R/W; bitpos: [15:0]; default: 630;
|
||||
* sample wait target for DAC PAD 1
|
||||
*/
|
||||
#define DAC_WAIT_TARGET_SAMPLE_PAD_0 0x0000FFFFU
|
||||
#define DAC_WAIT_TARGET_SAMPLE_PAD_0_M (DAC_WAIT_TARGET_SAMPLE_PAD_0_V << DAC_WAIT_TARGET_SAMPLE_PAD_0_S)
|
||||
#define DAC_WAIT_TARGET_SAMPLE_PAD_0_V 0x0000FFFFU
|
||||
#define DAC_WAIT_TARGET_SAMPLE_PAD_0_S 0
|
||||
/** DAC_WAIT_TARGET_SAMPLE_PAD_1 : R/W; bitpos: [31:16]; default: 630;
|
||||
* sample wait target for DAC PAD 0
|
||||
*/
|
||||
#define DAC_WAIT_TARGET_SAMPLE_PAD_1 0x0000FFFFU
|
||||
#define DAC_WAIT_TARGET_SAMPLE_PAD_1_M (DAC_WAIT_TARGET_SAMPLE_PAD_1_V << DAC_WAIT_TARGET_SAMPLE_PAD_1_S)
|
||||
#define DAC_WAIT_TARGET_SAMPLE_PAD_1_V 0x0000FFFFU
|
||||
#define DAC_WAIT_TARGET_SAMPLE_PAD_1_S 16
|
||||
|
||||
/** DAC_HOLD_WAIT_CFG_REG register
|
||||
* cali hold phase duration register
|
||||
*/
|
||||
#define DAC_HOLD_WAIT_CFG_REG (DR_REG_DAC_BASE + 0x28)
|
||||
/** DAC_WAIT_TARGET_HOLD_PAD_0 : R/W; bitpos: [15:0]; default: 61;
|
||||
* hold wait target for DAC PAD 0
|
||||
*/
|
||||
#define DAC_WAIT_TARGET_HOLD_PAD_0 0x0000FFFFU
|
||||
#define DAC_WAIT_TARGET_HOLD_PAD_0_M (DAC_WAIT_TARGET_HOLD_PAD_0_V << DAC_WAIT_TARGET_HOLD_PAD_0_S)
|
||||
#define DAC_WAIT_TARGET_HOLD_PAD_0_V 0x0000FFFFU
|
||||
#define DAC_WAIT_TARGET_HOLD_PAD_0_S 0
|
||||
/** DAC_WAIT_TARGET_HOLD_PAD_1 : R/W; bitpos: [31:16]; default: 61;
|
||||
* hold wait target for DAC PAD 1
|
||||
*/
|
||||
#define DAC_WAIT_TARGET_HOLD_PAD_1 0x0000FFFFU
|
||||
#define DAC_WAIT_TARGET_HOLD_PAD_1_M (DAC_WAIT_TARGET_HOLD_PAD_1_V << DAC_WAIT_TARGET_HOLD_PAD_1_S)
|
||||
#define DAC_WAIT_TARGET_HOLD_PAD_1_V 0x0000FFFFU
|
||||
#define DAC_WAIT_TARGET_HOLD_PAD_1_S 16
|
||||
|
||||
/** DAC_REFRESH_WAIT_CFG_REG register
|
||||
* cali refresh phase duration register
|
||||
*/
|
||||
#define DAC_REFRESH_WAIT_CFG_REG (DR_REG_DAC_BASE + 0x2c)
|
||||
/** DAC_WAIT_TARGET_REFRESH_PAD_0 : R/W; bitpos: [15:0]; default: 8;
|
||||
* refresh wait target for DAC PAD 0
|
||||
*/
|
||||
#define DAC_WAIT_TARGET_REFRESH_PAD_0 0x0000FFFFU
|
||||
#define DAC_WAIT_TARGET_REFRESH_PAD_0_M (DAC_WAIT_TARGET_REFRESH_PAD_0_V << DAC_WAIT_TARGET_REFRESH_PAD_0_S)
|
||||
#define DAC_WAIT_TARGET_REFRESH_PAD_0_V 0x0000FFFFU
|
||||
#define DAC_WAIT_TARGET_REFRESH_PAD_0_S 0
|
||||
/** DAC_WAIT_TARGET_REFRESH_PAD_1 : R/W; bitpos: [31:16]; default: 8;
|
||||
* refresh wait target for DAC PAD 1
|
||||
*/
|
||||
#define DAC_WAIT_TARGET_REFRESH_PAD_1 0x0000FFFFU
|
||||
#define DAC_WAIT_TARGET_REFRESH_PAD_1_M (DAC_WAIT_TARGET_REFRESH_PAD_1_V << DAC_WAIT_TARGET_REFRESH_PAD_1_S)
|
||||
#define DAC_WAIT_TARGET_REFRESH_PAD_1_V 0x0000FFFFU
|
||||
#define DAC_WAIT_TARGET_REFRESH_PAD_1_S 16
|
||||
|
||||
/** DAC_PDMA_INT_RAW_REG register
|
||||
* need_des
|
||||
*/
|
||||
#define DAC_PDMA_INT_RAW_REG (DR_REG_DAC_BASE + 0x30)
|
||||
/** DAC_PDMA_EMPTY_INT_RAW : R/WTC/SS; bitpos: [31]; default: 0;
|
||||
* need_des
|
||||
*/
|
||||
#define DAC_PDMA_EMPTY_INT_RAW (BIT(31))
|
||||
#define DAC_PDMA_EMPTY_INT_RAW_M (DAC_PDMA_EMPTY_INT_RAW_V << DAC_PDMA_EMPTY_INT_RAW_S)
|
||||
#define DAC_PDMA_EMPTY_INT_RAW_V 0x00000001U
|
||||
#define DAC_PDMA_EMPTY_INT_RAW_S 31
|
||||
|
||||
/** DAC_INT_ST_REG register
|
||||
* need_des
|
||||
*/
|
||||
#define DAC_INT_ST_REG (DR_REG_DAC_BASE + 0x34)
|
||||
/** DAC_PDMA_EMPTY_INT_ST : RO; bitpos: [31]; default: 0;
|
||||
* need_des
|
||||
*/
|
||||
#define DAC_PDMA_EMPTY_INT_ST (BIT(31))
|
||||
#define DAC_PDMA_EMPTY_INT_ST_M (DAC_PDMA_EMPTY_INT_ST_V << DAC_PDMA_EMPTY_INT_ST_S)
|
||||
#define DAC_PDMA_EMPTY_INT_ST_V 0x00000001U
|
||||
#define DAC_PDMA_EMPTY_INT_ST_S 31
|
||||
|
||||
/** DAC_INT_ENA_REG register
|
||||
* need_des
|
||||
*/
|
||||
#define DAC_INT_ENA_REG (DR_REG_DAC_BASE + 0x38)
|
||||
/** DAC_PDMA_EMPTY_INT_ENA : R/W; bitpos: [31]; default: 0;
|
||||
* need_des
|
||||
*/
|
||||
#define DAC_PDMA_EMPTY_INT_ENA (BIT(31))
|
||||
#define DAC_PDMA_EMPTY_INT_ENA_M (DAC_PDMA_EMPTY_INT_ENA_V << DAC_PDMA_EMPTY_INT_ENA_S)
|
||||
#define DAC_PDMA_EMPTY_INT_ENA_V 0x00000001U
|
||||
#define DAC_PDMA_EMPTY_INT_ENA_S 31
|
||||
|
||||
/** DAC_INT_CLR_REG register
|
||||
* need_des
|
||||
*/
|
||||
#define DAC_INT_CLR_REG (DR_REG_DAC_BASE + 0x3c)
|
||||
/** DAC_PDMA_EMPTY_INT_CLR : WT; bitpos: [31]; default: 0;
|
||||
* need_des
|
||||
*/
|
||||
#define DAC_PDMA_EMPTY_INT_CLR (BIT(31))
|
||||
#define DAC_PDMA_EMPTY_INT_CLR_M (DAC_PDMA_EMPTY_INT_CLR_V << DAC_PDMA_EMPTY_INT_CLR_S)
|
||||
#define DAC_PDMA_EMPTY_INT_CLR_V 0x00000001U
|
||||
#define DAC_PDMA_EMPTY_INT_CLR_S 31
|
||||
|
||||
/** DAC_DATE_REG register
|
||||
* need_des
|
||||
*/
|
||||
#define DAC_DATE_REG (DR_REG_DAC_BASE + 0x3fc)
|
||||
/** DAC_DATE : R/W; bitpos: [30:0]; default: 2426393;
|
||||
* need_des
|
||||
*/
|
||||
#define DAC_DATE 0x7FFFFFFFU
|
||||
#define DAC_DATE_M (DAC_DATE_V << DAC_DATE_S)
|
||||
#define DAC_DATE_V 0x7FFFFFFFU
|
||||
#define DAC_DATE_S 0
|
||||
/** DAC_CLK_EN : R/W; bitpos: [31]; default: 0;
|
||||
* need_des
|
||||
*/
|
||||
#define DAC_CLK_EN (BIT(31))
|
||||
#define DAC_CLK_EN_M (DAC_CLK_EN_V << DAC_CLK_EN_S)
|
||||
#define DAC_CLK_EN_V 0x00000001U
|
||||
#define DAC_CLK_EN_S 31
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
423
components/soc/esp32s31/register/soc/dac_struct.h
Normal file
423
components/soc/esp32s31/register/soc/dac_struct.h
Normal file
@@ -0,0 +1,423 @@
|
||||
/**
|
||||
* SPDX-FileCopyrightText: 2025 Espressif Systems (Shanghai) CO LTD
|
||||
*
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
*/
|
||||
#pragma once
|
||||
|
||||
#include <stdint.h>
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
/** Group: configure_register */
|
||||
/** Type of pad_cfg register
|
||||
* configure dac pad register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** hs_mode_pad_0 : R/W; bitpos: [0]; default: 0;
|
||||
* 1 to let DAC PAD 0 enter High speed mode
|
||||
*/
|
||||
uint32_t hs_mode_pad_0:1;
|
||||
/** xpd_pad_0 : R/W; bitpos: [1]; default: 0;
|
||||
* 1 to power on DAC PAD 0
|
||||
*/
|
||||
uint32_t xpd_pad_0:1;
|
||||
/** en_adc_mux_pad_0 : R/W; bitpos: [2]; default: 0;
|
||||
* 1 to enable adc mux for DAC PAD 0
|
||||
*/
|
||||
uint32_t en_adc_mux_pad_0:1;
|
||||
/** dsamp_ls_pad_0 : R/W; bitpos: [3]; default: 0;
|
||||
* 1 to start sample and hold mode for DAC PAD 0
|
||||
*/
|
||||
uint32_t dsamp_ls_pad_0:1;
|
||||
/** dcal_ls_pad_0 : R/W; bitpos: [4]; default: 0;
|
||||
* 1 to Calibrate the buffer of DAC PAD 0 (DBUF of pad 1 must be 1 during this
|
||||
* operation)
|
||||
*/
|
||||
uint32_t dcal_ls_pad_0:1;
|
||||
/** dbuf_ls_pad_0 : R/W; bitpos: [5]; default: 0;
|
||||
* 1 to turn on the buffer of DAC PAD 0
|
||||
*/
|
||||
uint32_t dbuf_ls_pad_0:1;
|
||||
/** on_ls_pad_0 : R/W; bitpos: [6]; default: 0;
|
||||
* 1 to turn on the DAC PAD 0 during sample and hold mode
|
||||
*/
|
||||
uint32_t on_ls_pad_0:1;
|
||||
/** hs_mode_pad_1 : R/W; bitpos: [7]; default: 0;
|
||||
* 1 to let DAC PAD 1 enter High speed mode
|
||||
*/
|
||||
uint32_t hs_mode_pad_1:1;
|
||||
/** xpd_pad_1 : R/W; bitpos: [8]; default: 0;
|
||||
* 1 to power on DAC PAD 1
|
||||
*/
|
||||
uint32_t xpd_pad_1:1;
|
||||
/** en_adc_mux_pad_1 : R/W; bitpos: [9]; default: 0;
|
||||
* 1 to enable adc mux for DAC PAD 1
|
||||
*/
|
||||
uint32_t en_adc_mux_pad_1:1;
|
||||
/** dsamp_ls_pad_1 : R/W; bitpos: [10]; default: 0;
|
||||
* 1 to start sample and hold mode for DAC PAD 1
|
||||
*/
|
||||
uint32_t dsamp_ls_pad_1:1;
|
||||
/** dcal_ls_pad_1 : R/W; bitpos: [11]; default: 0;
|
||||
* 1 to Calibrate the buffer of DAC PAD 1 (DBUF of pad 1 must be 1 during this
|
||||
* operation)
|
||||
*/
|
||||
uint32_t dcal_ls_pad_1:1;
|
||||
/** dbuf_ls_pad_1 : R/W; bitpos: [12]; default: 0;
|
||||
* 1 to turn on the buffer of DAC PAD 1
|
||||
*/
|
||||
uint32_t dbuf_ls_pad_1:1;
|
||||
/** on_ls_pad_1 : R/W; bitpos: [13]; default: 0;
|
||||
* 1 to turn on the DAC PAD 1 during sample and hold mode
|
||||
*/
|
||||
uint32_t on_ls_pad_1:1;
|
||||
/** div_num : R/W; bitpos: [29:14]; default: 1;
|
||||
* divide number between clk ls and clk hs
|
||||
*/
|
||||
uint32_t div_num:16;
|
||||
/** dbuf_range_ls_pad_0 : R/W; bitpos: [30]; default: 0;
|
||||
* 1:when buffer is activated, allow using full code of maximum bitwidth
|
||||
* 0:when buffer is not activated, should always be 0
|
||||
*/
|
||||
uint32_t dbuf_range_ls_pad_0:1;
|
||||
/** dbuf_range_ls_pad_1 : R/W; bitpos: [31]; default: 0;
|
||||
* 1:when buffer is activated, allow using full code of maximum bitwidth
|
||||
* 0:when buffer is not activated, should always be 0
|
||||
*/
|
||||
uint32_t dbuf_range_ls_pad_1:1;
|
||||
};
|
||||
uint32_t val;
|
||||
} dac_pad_cfg_reg_t;
|
||||
|
||||
/** Type of cali_result register
|
||||
* DAC CALI result register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** cali_result_pad_0 : R/W; bitpos: [11:0]; default: 0;
|
||||
* cali result register for pad 0 output
|
||||
*/
|
||||
uint32_t cali_result_pad_0:12;
|
||||
/** cali_result_pad_1 : R/W; bitpos: [23:12]; default: 0;
|
||||
* cali result register for pad 1 output
|
||||
*/
|
||||
uint32_t cali_result_pad_1:12;
|
||||
uint32_t reserved_24:8;
|
||||
};
|
||||
uint32_t val;
|
||||
} dac_cali_result_reg_t;
|
||||
|
||||
/** Type of pdma_cfg register
|
||||
* dac cfg register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** pdma_alter_mode : R/W; bitpos: [0]; default: 0;
|
||||
* 1:make rotation between two pads when outputting data of ppdma input path requires
|
||||
* reg_dac_1/0_data_sel = 1
|
||||
* 0:no change
|
||||
*/
|
||||
uint32_t pdma_alter_mode:1;
|
||||
/** pdma_reset_fifo : WT; bitpos: [1]; default: 0;
|
||||
* 1:reset dac fifo
|
||||
* 0:no change
|
||||
*/
|
||||
uint32_t pdma_reset_fifo:1;
|
||||
/** pdma_trans : R/W; bitpos: [2]; default: 0;
|
||||
* 1:start transaction for pdma path output
|
||||
* 0:stop transaction for pdma path output
|
||||
*/
|
||||
uint32_t pdma_trans:1;
|
||||
uint32_t reserved_3:29;
|
||||
};
|
||||
uint32_t val;
|
||||
} dac_pdma_cfg_reg_t;
|
||||
|
||||
/** Type of pdma_timer_cfg register
|
||||
* PDMA path timer register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** pdma_timer_en : R/W; bitpos: [0]; default: 0;
|
||||
* 1:enables using dac timer to reduce output frequency
|
||||
* 0:no data output
|
||||
*/
|
||||
uint32_t pdma_timer_en:1;
|
||||
/** pdma_timer_target : R/W; bitpos: [24:1]; default: 2;
|
||||
* dac pdma timer wait target
|
||||
*/
|
||||
uint32_t pdma_timer_target:24;
|
||||
uint32_t reserved_25:7;
|
||||
};
|
||||
uint32_t val;
|
||||
} dac_pdma_timer_cfg_reg_t;
|
||||
|
||||
/** Type of data_output_cfg register
|
||||
* dac DATA OUTPUT cfg register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** pad_0_data_sel : R/W; bitpos: [0]; default: 0;
|
||||
* 1:output pdma data
|
||||
* 0:output sintx data
|
||||
*/
|
||||
uint32_t pad_0_data_sel:1;
|
||||
/** pad_1_data_sel : R/W; bitpos: [1]; default: 0;
|
||||
* 1:output pdma data
|
||||
* 0:output sintx data
|
||||
*/
|
||||
uint32_t pad_1_data_sel:1;
|
||||
uint32_t reserved_2:30;
|
||||
};
|
||||
uint32_t val;
|
||||
} dac_data_output_cfg_reg_t;
|
||||
|
||||
/** Type of sintx_cfg register
|
||||
* dac rstn register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** sw_tone : R/W; bitpos: [0]; default: 0;
|
||||
* 1:enable software adjusting current sintx output data
|
||||
* 0:disable software adjustment
|
||||
*/
|
||||
uint32_t sw_tone:1;
|
||||
/** sw_fstep : R/W; bitpos: [16:1]; default: 1;
|
||||
* software adjust angle velocity foot step for sintx LUT input
|
||||
*/
|
||||
uint32_t sw_fstep:16;
|
||||
/** scale_1 : R/W; bitpos: [18:17]; default: 0;
|
||||
* right shift scaling config for LUT output of sintx for pad 0
|
||||
*/
|
||||
uint32_t scale_1:2;
|
||||
/** scale_2 : R/W; bitpos: [20:19]; default: 0;
|
||||
* software adjust angle velocity foot step for sintx LUT input
|
||||
*/
|
||||
uint32_t scale_2:2;
|
||||
/** inv_1 : R/W; bitpos: [22:21]; default: 0;
|
||||
* bit 1: invert the highest bit of output for pad 0
|
||||
* Bit 0: invert the entire output for pad 0
|
||||
*/
|
||||
uint32_t inv_1:2;
|
||||
/** inv_2 : R/W; bitpos: [24:23]; default: 0;
|
||||
* bit 1: invert the highest bit of output for pad 1
|
||||
* Bit 0: invert the entire output for pad 1
|
||||
*/
|
||||
uint32_t inv_2:2;
|
||||
uint32_t reserved_25:7;
|
||||
};
|
||||
uint32_t val;
|
||||
} dac_sintx_cfg_reg_t;
|
||||
|
||||
/** Type of sintx_timer_cfg register
|
||||
* SINTX path timer register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** sintx_timer_en : R/W; bitpos: [0]; default: 0;
|
||||
* 1:enables using dac timer to reduce output frequency
|
||||
* 0:no data output
|
||||
*/
|
||||
uint32_t sintx_timer_en:1;
|
||||
/** sintx_timer_target : R/W; bitpos: [24:1]; default: 2;
|
||||
* dac sintx timer wait target
|
||||
*/
|
||||
uint32_t sintx_timer_target:24;
|
||||
uint32_t reserved_25:7;
|
||||
};
|
||||
uint32_t val;
|
||||
} dac_sintx_timer_cfg_reg_t;
|
||||
|
||||
/** Type of sintx_data register
|
||||
* dac output register for sintx path
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** dc_1 : R/W; bitpos: [11:0]; default: 0;
|
||||
* the data output for DAC PAD0 for sintx path
|
||||
*/
|
||||
uint32_t dc_1:12;
|
||||
/** dc_2 : R/W; bitpos: [23:12]; default: 0;
|
||||
* the data output for DAC PAD1 for sintx path
|
||||
*/
|
||||
uint32_t dc_2:12;
|
||||
uint32_t reserved_24:8;
|
||||
};
|
||||
uint32_t val;
|
||||
} dac_sintx_data_reg_t;
|
||||
|
||||
/** Type of cali register
|
||||
* cali algorithm register for DAC
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** cali_out_pad_0 : RO; bitpos: [0]; default: 0;
|
||||
* cali out from DAC PAD 0
|
||||
*/
|
||||
uint32_t cali_out_pad_0:1;
|
||||
/** cali_out_pad_1 : RO; bitpos: [1]; default: 0;
|
||||
* cali out from DAC PAD 1
|
||||
*/
|
||||
uint32_t cali_out_pad_1:1;
|
||||
uint32_t reserved_2:30;
|
||||
};
|
||||
uint32_t val;
|
||||
} dac_cali_reg_t;
|
||||
|
||||
/** Type of sample_wait_cfg register
|
||||
* cali sample phase duration register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** wait_target_sample_pad_0 : R/W; bitpos: [15:0]; default: 630;
|
||||
* sample wait target for DAC PAD 1
|
||||
*/
|
||||
uint32_t wait_target_sample_pad_0:16;
|
||||
/** wait_target_sample_pad_1 : R/W; bitpos: [31:16]; default: 630;
|
||||
* sample wait target for DAC PAD 0
|
||||
*/
|
||||
uint32_t wait_target_sample_pad_1:16;
|
||||
};
|
||||
uint32_t val;
|
||||
} dac_sample_wait_cfg_reg_t;
|
||||
|
||||
/** Type of hold_wait_cfg register
|
||||
* cali hold phase duration register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** wait_target_hold_pad_0 : R/W; bitpos: [15:0]; default: 61;
|
||||
* hold wait target for DAC PAD 0
|
||||
*/
|
||||
uint32_t wait_target_hold_pad_0:16;
|
||||
/** wait_target_hold_pad_1 : R/W; bitpos: [31:16]; default: 61;
|
||||
* hold wait target for DAC PAD 1
|
||||
*/
|
||||
uint32_t wait_target_hold_pad_1:16;
|
||||
};
|
||||
uint32_t val;
|
||||
} dac_hold_wait_cfg_reg_t;
|
||||
|
||||
/** Type of refresh_wait_cfg register
|
||||
* cali refresh phase duration register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** wait_target_refresh_pad_0 : R/W; bitpos: [15:0]; default: 8;
|
||||
* refresh wait target for DAC PAD 0
|
||||
*/
|
||||
uint32_t wait_target_refresh_pad_0:16;
|
||||
/** wait_target_refresh_pad_1 : R/W; bitpos: [31:16]; default: 8;
|
||||
* refresh wait target for DAC PAD 1
|
||||
*/
|
||||
uint32_t wait_target_refresh_pad_1:16;
|
||||
};
|
||||
uint32_t val;
|
||||
} dac_refresh_wait_cfg_reg_t;
|
||||
|
||||
/** Type of pdma_int_raw register
|
||||
* need_des
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
uint32_t reserved_0:31;
|
||||
/** pdma_empty_int_raw : R/WTC/SS; bitpos: [31]; default: 0;
|
||||
* need_des
|
||||
*/
|
||||
uint32_t pdma_empty_int_raw:1;
|
||||
};
|
||||
uint32_t val;
|
||||
} dac_pdma_int_raw_reg_t;
|
||||
|
||||
/** Type of int_st register
|
||||
* need_des
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
uint32_t reserved_0:31;
|
||||
/** pdma_empty_int_st : RO; bitpos: [31]; default: 0;
|
||||
* need_des
|
||||
*/
|
||||
uint32_t pdma_empty_int_st:1;
|
||||
};
|
||||
uint32_t val;
|
||||
} dac_int_st_reg_t;
|
||||
|
||||
/** Type of int_ena register
|
||||
* need_des
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
uint32_t reserved_0:31;
|
||||
/** pdma_empty_int_ena : R/W; bitpos: [31]; default: 0;
|
||||
* need_des
|
||||
*/
|
||||
uint32_t pdma_empty_int_ena:1;
|
||||
};
|
||||
uint32_t val;
|
||||
} dac_int_ena_reg_t;
|
||||
|
||||
/** Type of int_clr register
|
||||
* need_des
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
uint32_t reserved_0:31;
|
||||
/** pdma_empty_int_clr : WT; bitpos: [31]; default: 0;
|
||||
* need_des
|
||||
*/
|
||||
uint32_t pdma_empty_int_clr:1;
|
||||
};
|
||||
uint32_t val;
|
||||
} dac_int_clr_reg_t;
|
||||
|
||||
/** Type of date register
|
||||
* need_des
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** date : R/W; bitpos: [30:0]; default: 2426393;
|
||||
* need_des
|
||||
*/
|
||||
uint32_t date:31;
|
||||
/** clk_en : R/W; bitpos: [31]; default: 0;
|
||||
* need_des
|
||||
*/
|
||||
uint32_t clk_en:1;
|
||||
};
|
||||
uint32_t val;
|
||||
} dac_date_reg_t;
|
||||
|
||||
|
||||
typedef struct {
|
||||
volatile dac_pad_cfg_reg_t pad_cfg;
|
||||
volatile dac_cali_result_reg_t cali_result;
|
||||
volatile dac_pdma_cfg_reg_t pdma_cfg;
|
||||
volatile dac_pdma_timer_cfg_reg_t pdma_timer_cfg;
|
||||
volatile dac_data_output_cfg_reg_t data_output_cfg;
|
||||
volatile dac_sintx_cfg_reg_t sintx_cfg;
|
||||
volatile dac_sintx_timer_cfg_reg_t sintx_timer_cfg;
|
||||
volatile dac_sintx_data_reg_t sintx_data;
|
||||
volatile dac_cali_reg_t cali;
|
||||
volatile dac_sample_wait_cfg_reg_t sample_wait_cfg;
|
||||
volatile dac_hold_wait_cfg_reg_t hold_wait_cfg;
|
||||
volatile dac_refresh_wait_cfg_reg_t refresh_wait_cfg;
|
||||
volatile dac_pdma_int_raw_reg_t pdma_int_raw;
|
||||
volatile dac_int_st_reg_t int_st;
|
||||
volatile dac_int_ena_reg_t int_ena;
|
||||
volatile dac_int_clr_reg_t int_clr;
|
||||
uint32_t reserved_040[239];
|
||||
volatile dac_date_reg_t date;
|
||||
} dac_dev_t;
|
||||
|
||||
|
||||
#ifndef __cplusplus
|
||||
_Static_assert(sizeof(dac_dev_t) == 0x400, "Invalid size of dac_dev_t structure");
|
||||
#endif
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
7190
components/soc/esp32s31/register/soc/dma2d_reg.h
Normal file
7190
components/soc/esp32s31/register/soc/dma2d_reg.h
Normal file
File diff suppressed because it is too large
Load Diff
2060
components/soc/esp32s31/register/soc/dma2d_struct.h
Normal file
2060
components/soc/esp32s31/register/soc/dma2d_struct.h
Normal file
File diff suppressed because it is too large
Load Diff
197
components/soc/esp32s31/register/soc/ds_reg.h
Normal file
197
components/soc/esp32s31/register/soc/ds_reg.h
Normal file
@@ -0,0 +1,197 @@
|
||||
/**
|
||||
* SPDX-FileCopyrightText: 2025 Espressif Systems (Shanghai) CO LTD
|
||||
*
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
*/
|
||||
#pragma once
|
||||
|
||||
#include <stdint.h>
|
||||
#include "soc/soc.h"
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
/** DS_Y_MEM register
|
||||
* memory that stores Y
|
||||
*/
|
||||
#define DS_Y_MEM (DR_REG_DS_BASE + 0x0)
|
||||
#define DS_Y_MEM_SIZE_BYTES 512
|
||||
|
||||
/** DS_M_MEM register
|
||||
* memory that stores M
|
||||
*/
|
||||
#define DS_M_MEM (DR_REG_DS_BASE + 0x200)
|
||||
#define DS_M_MEM_SIZE_BYTES 512
|
||||
|
||||
/** DS_RB_MEM register
|
||||
* memory that stores Rb
|
||||
*/
|
||||
#define DS_RB_MEM (DR_REG_DS_BASE + 0x400)
|
||||
#define DS_RB_MEM_SIZE_BYTES 512
|
||||
|
||||
/** DS_BOX_MEM register
|
||||
* memory that stores BOX
|
||||
*/
|
||||
#define DS_BOX_MEM (DR_REG_DS_BASE + 0x600)
|
||||
#define DS_BOX_MEM_SIZE_BYTES 48
|
||||
|
||||
/** DS_IV_MEM register
|
||||
* memory that stores IV
|
||||
*/
|
||||
#define DS_IV_MEM (DR_REG_DS_BASE + 0x630)
|
||||
#define DS_IV_MEM_SIZE_BYTES 16
|
||||
|
||||
/** DS_X_MEM register
|
||||
* memory that stores X
|
||||
*/
|
||||
#define DS_X_MEM (DR_REG_DS_BASE + 0x800)
|
||||
#define DS_X_MEM_SIZE_BYTES 512
|
||||
|
||||
/** DS_Z_MEM register
|
||||
* memory that stores Z
|
||||
*/
|
||||
#define DS_Z_MEM (DR_REG_DS_BASE + 0xa00)
|
||||
#define DS_Z_MEM_SIZE_BYTES 512
|
||||
|
||||
/** DS_SET_START_REG register
|
||||
* Activates the DS module
|
||||
*/
|
||||
#define DS_SET_START_REG (DR_REG_DS_BASE + 0xe00)
|
||||
/** DS_SET_START : WT; bitpos: [0]; default: 0;
|
||||
* Configures whether or not to activate the DS peripheral.
|
||||
* 0: Invalid
|
||||
* 1: Activate the DS peripheral
|
||||
*/
|
||||
#define DS_SET_START (BIT(0))
|
||||
#define DS_SET_START_M (DS_SET_START_V << DS_SET_START_S)
|
||||
#define DS_SET_START_V 0x00000001U
|
||||
#define DS_SET_START_S 0
|
||||
|
||||
/** DS_SET_CONTINUE_REG register
|
||||
* DS continue control register
|
||||
*/
|
||||
#define DS_SET_CONTINUE_REG (DR_REG_DS_BASE + 0xe04)
|
||||
/** DS_SET_CONTINUE : WT; bitpos: [0]; default: 0;
|
||||
* set this bit to continue DS operation.
|
||||
*/
|
||||
#define DS_SET_CONTINUE (BIT(0))
|
||||
#define DS_SET_CONTINUE_M (DS_SET_CONTINUE_V << DS_SET_CONTINUE_S)
|
||||
#define DS_SET_CONTINUE_V 0x00000001U
|
||||
#define DS_SET_CONTINUE_S 0
|
||||
|
||||
/** DS_SET_FINISH_REG register
|
||||
* Ends DS operation
|
||||
*/
|
||||
#define DS_SET_FINISH_REG (DR_REG_DS_BASE + 0xe08)
|
||||
/** DS_SET_FINISH : WT; bitpos: [0]; default: 0;
|
||||
* Configures whether or not to end DS operation.
|
||||
* 0: Invalid
|
||||
* 1: End DS operation
|
||||
*/
|
||||
#define DS_SET_FINISH (BIT(0))
|
||||
#define DS_SET_FINISH_M (DS_SET_FINISH_V << DS_SET_FINISH_S)
|
||||
#define DS_SET_FINISH_V 0x00000001U
|
||||
#define DS_SET_FINISH_S 0
|
||||
|
||||
/** DS_QUERY_BUSY_REG register
|
||||
* Status of the DS module
|
||||
*/
|
||||
#define DS_QUERY_BUSY_REG (DR_REG_DS_BASE + 0xe0c)
|
||||
/** DS_QUERY_BUSY : RO; bitpos: [0]; default: 0;
|
||||
* Represents whether or not the DS module is idle.
|
||||
* 0: The DS module is idle
|
||||
* 1: The DS module is busy
|
||||
*/
|
||||
#define DS_QUERY_BUSY (BIT(0))
|
||||
#define DS_QUERY_BUSY_M (DS_QUERY_BUSY_V << DS_QUERY_BUSY_S)
|
||||
#define DS_QUERY_BUSY_V 0x00000001U
|
||||
#define DS_QUERY_BUSY_S 0
|
||||
|
||||
/** DS_QUERY_KEY_WRONG_REG register
|
||||
* Checks the reason why \begin{math}DS_KEY\end{math} is not ready
|
||||
*/
|
||||
#define DS_QUERY_KEY_WRONG_REG (DR_REG_DS_BASE + 0xe10)
|
||||
/** DS_QUERY_KEY_WRONG : RO; bitpos: [3:0]; default: 0;
|
||||
* Represents the specific problem with HMAC initialization.
|
||||
* 0: HMAC is not called
|
||||
* 1-15: HMAC was activated, but the DS peripheral did not successfully receive the
|
||||
* \begin{math}DS_KEY\end{math} from the HMAC peripheral. (The biggest value is 15)
|
||||
*/
|
||||
#define DS_QUERY_KEY_WRONG 0x0000000FU
|
||||
#define DS_QUERY_KEY_WRONG_M (DS_QUERY_KEY_WRONG_V << DS_QUERY_KEY_WRONG_S)
|
||||
#define DS_QUERY_KEY_WRONG_V 0x0000000FU
|
||||
#define DS_QUERY_KEY_WRONG_S 0
|
||||
|
||||
/** DS_QUERY_CHECK_REG register
|
||||
* Queries DS check result
|
||||
*/
|
||||
#define DS_QUERY_CHECK_REG (DR_REG_DS_BASE + 0xe14)
|
||||
/** DS_MD_ERROR : RO; bitpos: [0]; default: 0;
|
||||
* Represents whether or not the MD check passes.
|
||||
* 0: The MD check passes
|
||||
* 1: The MD check fails
|
||||
*/
|
||||
#define DS_MD_ERROR (BIT(0))
|
||||
#define DS_MD_ERROR_M (DS_MD_ERROR_V << DS_MD_ERROR_S)
|
||||
#define DS_MD_ERROR_V 0x00000001U
|
||||
#define DS_MD_ERROR_S 0
|
||||
/** DS_PADDING_BAD : RO; bitpos: [1]; default: 0;
|
||||
* Represents whether or not the padding check passes.
|
||||
* 0: The padding check passes
|
||||
* 1: The padding check fails
|
||||
*/
|
||||
#define DS_PADDING_BAD (BIT(1))
|
||||
#define DS_PADDING_BAD_M (DS_PADDING_BAD_V << DS_PADDING_BAD_S)
|
||||
#define DS_PADDING_BAD_V 0x00000001U
|
||||
#define DS_PADDING_BAD_S 1
|
||||
|
||||
/** DS_STATIC_REG register
|
||||
* DS configure key source register
|
||||
*/
|
||||
#define DS_STATIC_REG (DR_REG_DS_BASE + 0xe18)
|
||||
/** DS_KEY_SOURCE : R/W; bitpos: [0]; default: 0;
|
||||
* digital signature key source bit.
|
||||
* 1'b0: key is from hmac.
|
||||
* 1'b1: key is from key manager.
|
||||
*/
|
||||
#define DS_KEY_SOURCE (BIT(0))
|
||||
#define DS_KEY_SOURCE_M (DS_KEY_SOURCE_V << DS_KEY_SOURCE_S)
|
||||
#define DS_KEY_SOURCE_V 0x00000001U
|
||||
#define DS_KEY_SOURCE_S 0
|
||||
/** DS_SKIP_PADDING_CHECK : R/W; bitpos: [1]; default: 0;
|
||||
* digital signature padding check bypass bit.
|
||||
* 1'b0: padding check enabled.
|
||||
* 1'b1: padding check skipped.
|
||||
*/
|
||||
#define DS_SKIP_PADDING_CHECK (BIT(1))
|
||||
#define DS_SKIP_PADDING_CHECK_M (DS_SKIP_PADDING_CHECK_V << DS_SKIP_PADDING_CHECK_S)
|
||||
#define DS_SKIP_PADDING_CHECK_V 0x00000001U
|
||||
#define DS_SKIP_PADDING_CHECK_S 1
|
||||
|
||||
/** DS_DATE_REG register
|
||||
* DS version control register
|
||||
*/
|
||||
#define DS_DATE_REG (DR_REG_DS_BASE + 0xe20)
|
||||
/** DS_DATE : R/W; bitpos: [29:0]; default: 539297817;
|
||||
* ds version information
|
||||
*/
|
||||
#define DS_DATE 0x3FFFFFFFU
|
||||
#define DS_DATE_M (DS_DATE_V << DS_DATE_S)
|
||||
#define DS_DATE_V 0x3FFFFFFFU
|
||||
#define DS_DATE_S 0
|
||||
|
||||
/** DS_TIMEOUT_LIMIT_REG register
|
||||
* DS timeout limit configure register
|
||||
*/
|
||||
#define DS_TIMEOUT_LIMIT_REG (DR_REG_DS_BASE + 0xe24)
|
||||
/** DS_TIMEOUT_LIMIT : R/W; bitpos: [31:0]; default: 4294967295;
|
||||
* The timeout limitation for waiting sub-IP.
|
||||
*/
|
||||
#define DS_TIMEOUT_LIMIT 0xFFFFFFFFU
|
||||
#define DS_TIMEOUT_LIMIT_M (DS_TIMEOUT_LIMIT_V << DS_TIMEOUT_LIMIT_S)
|
||||
#define DS_TIMEOUT_LIMIT_V 0xFFFFFFFFU
|
||||
#define DS_TIMEOUT_LIMIT_S 0
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
200
components/soc/esp32s31/register/soc/ds_struct.h
Normal file
200
components/soc/esp32s31/register/soc/ds_struct.h
Normal file
@@ -0,0 +1,200 @@
|
||||
/**
|
||||
* SPDX-FileCopyrightText: 2025 Espressif Systems (Shanghai) CO LTD
|
||||
*
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
*/
|
||||
#pragma once
|
||||
|
||||
#include <stdint.h>
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
/** Group: memory type */
|
||||
|
||||
/** Group: Control/Status registers */
|
||||
/** Type of set_start register
|
||||
* Activates the DS module
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** set_start : WT; bitpos: [0]; default: 0;
|
||||
* Configures whether or not to activate the DS peripheral.
|
||||
* 0: Invalid
|
||||
* 1: Activate the DS peripheral
|
||||
*/
|
||||
uint32_t set_start:1;
|
||||
uint32_t reserved_1:31;
|
||||
};
|
||||
uint32_t val;
|
||||
} ds_set_start_reg_t;
|
||||
|
||||
/** Type of set_continue register
|
||||
* DS continue control register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** set_continue : WT; bitpos: [0]; default: 0;
|
||||
* set this bit to continue DS operation.
|
||||
*/
|
||||
uint32_t set_continue:1;
|
||||
uint32_t reserved_1:31;
|
||||
};
|
||||
uint32_t val;
|
||||
} ds_set_continue_reg_t;
|
||||
|
||||
/** Type of set_finish register
|
||||
* Ends DS operation
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** set_finish : WT; bitpos: [0]; default: 0;
|
||||
* Configures whether or not to end DS operation.
|
||||
* 0: Invalid
|
||||
* 1: End DS operation
|
||||
*/
|
||||
uint32_t set_finish:1;
|
||||
uint32_t reserved_1:31;
|
||||
};
|
||||
uint32_t val;
|
||||
} ds_set_finish_reg_t;
|
||||
|
||||
/** Type of query_busy register
|
||||
* Status of the DS module
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** query_busy : RO; bitpos: [0]; default: 0;
|
||||
* Represents whether or not the DS module is idle.
|
||||
* 0: The DS module is idle
|
||||
* 1: The DS module is busy
|
||||
*/
|
||||
uint32_t query_busy:1;
|
||||
uint32_t reserved_1:31;
|
||||
};
|
||||
uint32_t val;
|
||||
} ds_query_busy_reg_t;
|
||||
|
||||
/** Type of query_key_wrong register
|
||||
* Checks the reason why \begin{math}DS_KEY\end{math} is not ready
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** query_key_wrong : RO; bitpos: [3:0]; default: 0;
|
||||
* Represents the specific problem with HMAC initialization.
|
||||
* 0: HMAC is not called
|
||||
* 1-15: HMAC was activated, but the DS peripheral did not successfully receive the
|
||||
* \begin{math}DS_KEY\end{math} from the HMAC peripheral. (The biggest value is 15)
|
||||
*/
|
||||
uint32_t query_key_wrong:4;
|
||||
uint32_t reserved_4:28;
|
||||
};
|
||||
uint32_t val;
|
||||
} ds_query_key_wrong_reg_t;
|
||||
|
||||
/** Type of query_check register
|
||||
* Queries DS check result
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** md_error : RO; bitpos: [0]; default: 0;
|
||||
* Represents whether or not the MD check passes.
|
||||
* 0: The MD check passes
|
||||
* 1: The MD check fails
|
||||
*/
|
||||
uint32_t md_error:1;
|
||||
/** padding_bad : RO; bitpos: [1]; default: 0;
|
||||
* Represents whether or not the padding check passes.
|
||||
* 0: The padding check passes
|
||||
* 1: The padding check fails
|
||||
*/
|
||||
uint32_t padding_bad:1;
|
||||
uint32_t reserved_2:30;
|
||||
};
|
||||
uint32_t val;
|
||||
} ds_query_check_reg_t;
|
||||
|
||||
|
||||
/** Group: Configuration registers */
|
||||
/** Type of static register
|
||||
* DS configure key source register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** key_source : R/W; bitpos: [0]; default: 0;
|
||||
* digital signature key source bit.
|
||||
* 1'b0: key is from hmac.
|
||||
* 1'b1: key is from key manager.
|
||||
*/
|
||||
uint32_t key_source:1;
|
||||
/** skip_padding_check : R/W; bitpos: [1]; default: 0;
|
||||
* digital signature padding check bypass bit.
|
||||
* 1'b0: padding check enabled.
|
||||
* 1'b1: padding check skipped.
|
||||
*/
|
||||
uint32_t skip_padding_check:1;
|
||||
uint32_t reserved_2:30;
|
||||
};
|
||||
uint32_t val;
|
||||
} ds_static_reg_t;
|
||||
|
||||
/** Type of timeout_limit register
|
||||
* DS timeout limit configure register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** timeout_limit : R/W; bitpos: [31:0]; default: 4294967295;
|
||||
* The timeout limitation for waiting sub-IP.
|
||||
*/
|
||||
uint32_t timeout_limit:32;
|
||||
};
|
||||
uint32_t val;
|
||||
} ds_timeout_limit_reg_t;
|
||||
|
||||
|
||||
/** Group: version control register */
|
||||
/** Type of date register
|
||||
* DS version control register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** date : R/W; bitpos: [29:0]; default: 539297817;
|
||||
* ds version information
|
||||
*/
|
||||
uint32_t date:30;
|
||||
uint32_t reserved_30:2;
|
||||
};
|
||||
uint32_t val;
|
||||
} ds_date_reg_t;
|
||||
|
||||
|
||||
typedef struct {
|
||||
volatile uint32_t y[128];
|
||||
volatile uint32_t m[128];
|
||||
volatile uint32_t rb[128];
|
||||
volatile uint32_t box[12];
|
||||
volatile uint32_t iv[4];
|
||||
uint32_t reserved_640[112];
|
||||
volatile uint32_t x[128];
|
||||
volatile uint32_t z[128];
|
||||
uint32_t reserved_c00[128];
|
||||
volatile ds_set_start_reg_t set_start;
|
||||
volatile ds_set_continue_reg_t set_continue;
|
||||
volatile ds_set_finish_reg_t set_finish;
|
||||
volatile ds_query_busy_reg_t query_busy;
|
||||
volatile ds_query_key_wrong_reg_t query_key_wrong;
|
||||
volatile ds_query_check_reg_t query_check;
|
||||
volatile ds_static_reg_t static;
|
||||
uint32_t reserved_e1c;
|
||||
volatile ds_date_reg_t date;
|
||||
volatile ds_timeout_limit_reg_t timeout_limit;
|
||||
} ds_dev_t;
|
||||
|
||||
|
||||
#ifndef __cplusplus
|
||||
_Static_assert(sizeof(ds_dev_t) == 0xe28, "Invalid size of ds_dev_t structure");
|
||||
#endif
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
224
components/soc/esp32s31/register/soc/ecc_mult_reg.h
Normal file
224
components/soc/esp32s31/register/soc/ecc_mult_reg.h
Normal file
@@ -0,0 +1,224 @@
|
||||
/**
|
||||
* SPDX-FileCopyrightText: 2025 Espressif Systems (Shanghai) CO LTD
|
||||
*
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
*/
|
||||
#pragma once
|
||||
|
||||
#include <stdint.h>
|
||||
#include "soc/soc.h"
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
/** ECC_MULT_INT_RAW_REG register
|
||||
* ECC raw interrupt status register
|
||||
*/
|
||||
#define ECC_MULT_INT_RAW_REG (DR_REG_ECC_MULT_BASE + 0xc)
|
||||
/** ECC_MULT_CALC_DONE_INT_RAW : RO/WTC/SS; bitpos: [0]; default: 0;
|
||||
* The raw interrupt status of the ECC_CALC_DONE_INT interrupt.
|
||||
*/
|
||||
#define ECC_MULT_CALC_DONE_INT_RAW (BIT(0))
|
||||
#define ECC_MULT_CALC_DONE_INT_RAW_M (ECC_MULT_CALC_DONE_INT_RAW_V << ECC_MULT_CALC_DONE_INT_RAW_S)
|
||||
#define ECC_MULT_CALC_DONE_INT_RAW_V 0x00000001U
|
||||
#define ECC_MULT_CALC_DONE_INT_RAW_S 0
|
||||
|
||||
/** ECC_MULT_INT_ST_REG register
|
||||
* ECC masked interrupt status register
|
||||
*/
|
||||
#define ECC_MULT_INT_ST_REG (DR_REG_ECC_MULT_BASE + 0x10)
|
||||
/** ECC_MULT_CALC_DONE_INT_ST : RO; bitpos: [0]; default: 0;
|
||||
* The masked interrupt status of the ECC_CALC_DONE_INT interrupt.
|
||||
*/
|
||||
#define ECC_MULT_CALC_DONE_INT_ST (BIT(0))
|
||||
#define ECC_MULT_CALC_DONE_INT_ST_M (ECC_MULT_CALC_DONE_INT_ST_V << ECC_MULT_CALC_DONE_INT_ST_S)
|
||||
#define ECC_MULT_CALC_DONE_INT_ST_V 0x00000001U
|
||||
#define ECC_MULT_CALC_DONE_INT_ST_S 0
|
||||
|
||||
/** ECC_MULT_INT_ENA_REG register
|
||||
* ECC interrupt enable register
|
||||
*/
|
||||
#define ECC_MULT_INT_ENA_REG (DR_REG_ECC_MULT_BASE + 0x14)
|
||||
/** ECC_MULT_CALC_DONE_INT_ENA : R/W; bitpos: [0]; default: 0;
|
||||
* Write 1 to enable the ECC_CALC_DONE_INT interrupt.
|
||||
*/
|
||||
#define ECC_MULT_CALC_DONE_INT_ENA (BIT(0))
|
||||
#define ECC_MULT_CALC_DONE_INT_ENA_M (ECC_MULT_CALC_DONE_INT_ENA_V << ECC_MULT_CALC_DONE_INT_ENA_S)
|
||||
#define ECC_MULT_CALC_DONE_INT_ENA_V 0x00000001U
|
||||
#define ECC_MULT_CALC_DONE_INT_ENA_S 0
|
||||
|
||||
/** ECC_MULT_INT_CLR_REG register
|
||||
* ECC interrupt clear register
|
||||
*/
|
||||
#define ECC_MULT_INT_CLR_REG (DR_REG_ECC_MULT_BASE + 0x18)
|
||||
/** ECC_MULT_CALC_DONE_INT_CLR : WT; bitpos: [0]; default: 0;
|
||||
* Write 1 to clear the ECC_CALC_DONE_INT interrupt.
|
||||
*/
|
||||
#define ECC_MULT_CALC_DONE_INT_CLR (BIT(0))
|
||||
#define ECC_MULT_CALC_DONE_INT_CLR_M (ECC_MULT_CALC_DONE_INT_CLR_V << ECC_MULT_CALC_DONE_INT_CLR_S)
|
||||
#define ECC_MULT_CALC_DONE_INT_CLR_V 0x00000001U
|
||||
#define ECC_MULT_CALC_DONE_INT_CLR_S 0
|
||||
|
||||
/** ECC_MULT_CONF_REG register
|
||||
* ECC configuration register
|
||||
*/
|
||||
#define ECC_MULT_CONF_REG (DR_REG_ECC_MULT_BASE + 0x1c)
|
||||
/** ECC_MULT_START : R/W/SC; bitpos: [0]; default: 0;
|
||||
* Configures whether to start calculation of ECC Accelerator. This bit will be
|
||||
* self-cleared after the calculation is done.
|
||||
* 0: No effect
|
||||
* 1: Start calculation of ECC Accelerator
|
||||
*/
|
||||
#define ECC_MULT_START (BIT(0))
|
||||
#define ECC_MULT_START_M (ECC_MULT_START_V << ECC_MULT_START_S)
|
||||
#define ECC_MULT_START_V 0x00000001U
|
||||
#define ECC_MULT_START_S 0
|
||||
/** ECC_MULT_RESET : WT; bitpos: [1]; default: 0;
|
||||
* Configures whether to reset ECC Accelerator.
|
||||
* 0: No effect
|
||||
* 1: Reset
|
||||
*/
|
||||
#define ECC_MULT_RESET (BIT(1))
|
||||
#define ECC_MULT_RESET_M (ECC_MULT_RESET_V << ECC_MULT_RESET_S)
|
||||
#define ECC_MULT_RESET_V 0x00000001U
|
||||
#define ECC_MULT_RESET_S 1
|
||||
/** ECC_MULT_KEY_LENGTH : R/W; bitpos: [3:2]; default: 0;
|
||||
* Configures the key length mode bit of ECC Accelerator.
|
||||
* 0: P-192
|
||||
* 1: P-256
|
||||
* 2: P-384
|
||||
* 3: SM2.
|
||||
*/
|
||||
#define ECC_MULT_KEY_LENGTH 0x00000003U
|
||||
#define ECC_MULT_KEY_LENGTH_M (ECC_MULT_KEY_LENGTH_V << ECC_MULT_KEY_LENGTH_S)
|
||||
#define ECC_MULT_KEY_LENGTH_V 0x00000003U
|
||||
#define ECC_MULT_KEY_LENGTH_S 2
|
||||
/** ECC_MULT_MOD_BASE : R/W; bitpos: [4]; default: 0;
|
||||
* Configures the mod base of mod operation, only valid in work_mode 8-11.
|
||||
* 0: n(order of curve)
|
||||
* 1: p(mod base of curve)
|
||||
*/
|
||||
#define ECC_MULT_MOD_BASE (BIT(4))
|
||||
#define ECC_MULT_MOD_BASE_M (ECC_MULT_MOD_BASE_V << ECC_MULT_MOD_BASE_S)
|
||||
#define ECC_MULT_MOD_BASE_V 0x00000001U
|
||||
#define ECC_MULT_MOD_BASE_S 4
|
||||
/** ECC_MULT_WORK_MODE : R/W; bitpos: [8:5]; default: 0;
|
||||
* Configures the work mode of ECC Accelerator.
|
||||
* 0: Point Multi mode
|
||||
* 1: Reserved
|
||||
* 2: Point Verif mode
|
||||
* 3: Point Verif + Multi mode
|
||||
* 4: Jacobian Point Multi mode
|
||||
* 5: Reserved
|
||||
* 6: Jacobian Point Verif mode
|
||||
* 7: Point Verif + Jacobian Point Multi mode
|
||||
* 8: Mod Add mode
|
||||
* 9. Mod Sub mode
|
||||
* 10: Mod Multi mode
|
||||
* 11: Mod Div mode
|
||||
*/
|
||||
#define ECC_MULT_WORK_MODE 0x0000000FU
|
||||
#define ECC_MULT_WORK_MODE_M (ECC_MULT_WORK_MODE_V << ECC_MULT_WORK_MODE_S)
|
||||
#define ECC_MULT_WORK_MODE_V 0x0000000FU
|
||||
#define ECC_MULT_WORK_MODE_S 5
|
||||
/** ECC_MULT_SECURITY_MODE : R/W; bitpos: [9]; default: 0;
|
||||
* Configures the security mode of ECC Accelerator.
|
||||
* 0: no secure function enabled.
|
||||
* 1: enable constant-time calculation in all point multiplication modes.
|
||||
*/
|
||||
#define ECC_MULT_SECURITY_MODE (BIT(9))
|
||||
#define ECC_MULT_SECURITY_MODE_M (ECC_MULT_SECURITY_MODE_V << ECC_MULT_SECURITY_MODE_S)
|
||||
#define ECC_MULT_SECURITY_MODE_V 0x00000001U
|
||||
#define ECC_MULT_SECURITY_MODE_S 9
|
||||
/** ECC_MULT_VERIFICATION_RESULT : RO/SS; bitpos: [29]; default: 0;
|
||||
* Represents the verification result of ECC Accelerator, valid only when calculation
|
||||
* is done.
|
||||
*/
|
||||
#define ECC_MULT_VERIFICATION_RESULT (BIT(29))
|
||||
#define ECC_MULT_VERIFICATION_RESULT_M (ECC_MULT_VERIFICATION_RESULT_V << ECC_MULT_VERIFICATION_RESULT_S)
|
||||
#define ECC_MULT_VERIFICATION_RESULT_V 0x00000001U
|
||||
#define ECC_MULT_VERIFICATION_RESULT_S 29
|
||||
/** ECC_MULT_CLK_EN : R/W; bitpos: [30]; default: 0;
|
||||
* Configures whether to force on register clock gate.
|
||||
* 0: No effect
|
||||
* 1: Force on
|
||||
*/
|
||||
#define ECC_MULT_CLK_EN (BIT(30))
|
||||
#define ECC_MULT_CLK_EN_M (ECC_MULT_CLK_EN_V << ECC_MULT_CLK_EN_S)
|
||||
#define ECC_MULT_CLK_EN_V 0x00000001U
|
||||
#define ECC_MULT_CLK_EN_S 30
|
||||
/** ECC_MULT_MEM_CLOCK_GATE_FORCE_ON : R/W; bitpos: [31]; default: 0;
|
||||
* Configures whether to force on ECC memory clock gate.
|
||||
* 0: No effect
|
||||
* 1: Force on
|
||||
*/
|
||||
#define ECC_MULT_MEM_CLOCK_GATE_FORCE_ON (BIT(31))
|
||||
#define ECC_MULT_MEM_CLOCK_GATE_FORCE_ON_M (ECC_MULT_MEM_CLOCK_GATE_FORCE_ON_V << ECC_MULT_MEM_CLOCK_GATE_FORCE_ON_S)
|
||||
#define ECC_MULT_MEM_CLOCK_GATE_FORCE_ON_V 0x00000001U
|
||||
#define ECC_MULT_MEM_CLOCK_GATE_FORCE_ON_S 31
|
||||
|
||||
/** ECC_MULT_FREE_REG register
|
||||
* ECC free status register
|
||||
*/
|
||||
#define ECC_MULT_FREE_REG (DR_REG_ECC_MULT_BASE + 0x20)
|
||||
/** ECC_MULT_FREE : R/W; bitpos: [0]; default: 1;
|
||||
* ECC mult free state register
|
||||
* 0: non-free
|
||||
* 1: free
|
||||
*/
|
||||
#define ECC_MULT_FREE (BIT(0))
|
||||
#define ECC_MULT_FREE_M (ECC_MULT_FREE_V << ECC_MULT_FREE_S)
|
||||
#define ECC_MULT_FREE_V 0x00000001U
|
||||
#define ECC_MULT_FREE_S 0
|
||||
|
||||
/** ECC_MULT_DATE_REG register
|
||||
* Version control register
|
||||
*/
|
||||
#define ECC_MULT_DATE_REG (DR_REG_ECC_MULT_BASE + 0xfc)
|
||||
/** ECC_MULT_DATE : R/W; bitpos: [27:0]; default: 38822288;
|
||||
* ECC mult version control register
|
||||
*/
|
||||
#define ECC_MULT_DATE 0x0FFFFFFFU
|
||||
#define ECC_MULT_DATE_M (ECC_MULT_DATE_V << ECC_MULT_DATE_S)
|
||||
#define ECC_MULT_DATE_V 0x0FFFFFFFU
|
||||
#define ECC_MULT_DATE_S 0
|
||||
|
||||
/** ECC_MULT_K_MEM register
|
||||
* The memory that stores k.
|
||||
*/
|
||||
#define ECC_MULT_K_MEM (DR_REG_ECC_MULT_BASE + 0x100)
|
||||
#define ECC_MULT_K_MEM_SIZE_BYTES 48
|
||||
|
||||
/** ECC_MULT_PX_MEM register
|
||||
* The memory that stores Px.
|
||||
*/
|
||||
#define ECC_MULT_PX_MEM (DR_REG_ECC_MULT_BASE + 0x130)
|
||||
#define ECC_MULT_PX_MEM_SIZE_BYTES 48
|
||||
|
||||
/** ECC_MULT_PY_MEM register
|
||||
* The memory that stores Py.
|
||||
*/
|
||||
#define ECC_MULT_PY_MEM (DR_REG_ECC_MULT_BASE + 0x160)
|
||||
#define ECC_MULT_PY_MEM_SIZE_BYTES 48
|
||||
|
||||
/** ECC_MULT_QX_MEM register
|
||||
* The memory that stores Qx.
|
||||
*/
|
||||
#define ECC_MULT_QX_MEM (DR_REG_ECC_MULT_BASE + 0x190)
|
||||
#define ECC_MULT_QX_MEM_SIZE_BYTES 48
|
||||
|
||||
/** ECC_MULT_QY_MEM register
|
||||
* The memory that stores Qy.
|
||||
*/
|
||||
#define ECC_MULT_QY_MEM (DR_REG_ECC_MULT_BASE + 0x1c0)
|
||||
#define ECC_MULT_QY_MEM_SIZE_BYTES 48
|
||||
|
||||
/** ECC_MULT_QZ_MEM register
|
||||
* The memory that stores Qz.
|
||||
*/
|
||||
#define ECC_MULT_QZ_MEM (DR_REG_ECC_MULT_BASE + 0x1f0)
|
||||
#define ECC_MULT_QZ_MEM_SIZE_BYTES 48
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
210
components/soc/esp32s31/register/soc/ecc_mult_struct.h
Normal file
210
components/soc/esp32s31/register/soc/ecc_mult_struct.h
Normal file
@@ -0,0 +1,210 @@
|
||||
/**
|
||||
* SPDX-FileCopyrightText: 2025 Espressif Systems (Shanghai) CO LTD
|
||||
*
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
*/
|
||||
#pragma once
|
||||
|
||||
#include <stdint.h>
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
/** Group: Memory data */
|
||||
|
||||
/** Group: Interrupt registers */
|
||||
/** Type of int_raw register
|
||||
* ECC raw interrupt status register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** calc_done_int_raw : RO/WTC/SS; bitpos: [0]; default: 0;
|
||||
* The raw interrupt status of the ECC_CALC_DONE_INT interrupt.
|
||||
*/
|
||||
uint32_t calc_done_int_raw:1;
|
||||
uint32_t reserved_1:31;
|
||||
};
|
||||
uint32_t val;
|
||||
} ecc_mult_int_raw_reg_t;
|
||||
|
||||
/** Type of int_st register
|
||||
* ECC masked interrupt status register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** calc_done_int_st : RO; bitpos: [0]; default: 0;
|
||||
* The masked interrupt status of the ECC_CALC_DONE_INT interrupt.
|
||||
*/
|
||||
uint32_t calc_done_int_st:1;
|
||||
uint32_t reserved_1:31;
|
||||
};
|
||||
uint32_t val;
|
||||
} ecc_mult_int_st_reg_t;
|
||||
|
||||
/** Type of int_ena register
|
||||
* ECC interrupt enable register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** calc_done_int_ena : R/W; bitpos: [0]; default: 0;
|
||||
* Write 1 to enable the ECC_CALC_DONE_INT interrupt.
|
||||
*/
|
||||
uint32_t calc_done_int_ena:1;
|
||||
uint32_t reserved_1:31;
|
||||
};
|
||||
uint32_t val;
|
||||
} ecc_mult_int_ena_reg_t;
|
||||
|
||||
/** Type of int_clr register
|
||||
* ECC interrupt clear register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** calc_done_int_clr : WT; bitpos: [0]; default: 0;
|
||||
* Write 1 to clear the ECC_CALC_DONE_INT interrupt.
|
||||
*/
|
||||
uint32_t calc_done_int_clr:1;
|
||||
uint32_t reserved_1:31;
|
||||
};
|
||||
uint32_t val;
|
||||
} ecc_mult_int_clr_reg_t;
|
||||
|
||||
|
||||
/** Group: RX Control and configuration registers */
|
||||
/** Type of conf register
|
||||
* ECC configuration register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** start : R/W/SC; bitpos: [0]; default: 0;
|
||||
* Configures whether to start calculation of ECC Accelerator. This bit will be
|
||||
* self-cleared after the calculation is done.
|
||||
* 0: No effect
|
||||
* 1: Start calculation of ECC Accelerator
|
||||
*/
|
||||
uint32_t start:1;
|
||||
/** reset : WT; bitpos: [1]; default: 0;
|
||||
* Configures whether to reset ECC Accelerator.
|
||||
* 0: No effect
|
||||
* 1: Reset
|
||||
*/
|
||||
uint32_t reset:1;
|
||||
/** key_length : R/W; bitpos: [3:2]; default: 0;
|
||||
* Configures the key length mode bit of ECC Accelerator.
|
||||
* 0: P-192
|
||||
* 1: P-256
|
||||
* 2: P-384
|
||||
* 3: SM2.
|
||||
*/
|
||||
uint32_t key_length:2;
|
||||
/** mod_base : R/W; bitpos: [4]; default: 0;
|
||||
* Configures the mod base of mod operation, only valid in work_mode 8-11.
|
||||
* 0: n(order of curve)
|
||||
* 1: p(mod base of curve)
|
||||
*/
|
||||
uint32_t mod_base:1;
|
||||
/** work_mode : R/W; bitpos: [8:5]; default: 0;
|
||||
* Configures the work mode of ECC Accelerator.
|
||||
* 0: Point Multi mode
|
||||
* 1: Reserved
|
||||
* 2: Point Verif mode
|
||||
* 3: Point Verif + Multi mode
|
||||
* 4: Jacobian Point Multi mode
|
||||
* 5: Reserved
|
||||
* 6: Jacobian Point Verif mode
|
||||
* 7: Point Verif + Jacobian Point Multi mode
|
||||
* 8: Mod Add mode
|
||||
* 9. Mod Sub mode
|
||||
* 10: Mod Multi mode
|
||||
* 11: Mod Div mode
|
||||
*/
|
||||
uint32_t work_mode:4;
|
||||
/** security_mode : R/W; bitpos: [9]; default: 0;
|
||||
* Configures the security mode of ECC Accelerator.
|
||||
* 0: no secure function enabled.
|
||||
* 1: enable constant-time calculation in all point multiplication modes.
|
||||
*/
|
||||
uint32_t security_mode:1;
|
||||
uint32_t reserved_10:19;
|
||||
/** verification_result : RO/SS; bitpos: [29]; default: 0;
|
||||
* Represents the verification result of ECC Accelerator, valid only when calculation
|
||||
* is done.
|
||||
*/
|
||||
uint32_t verification_result:1;
|
||||
/** clk_en : R/W; bitpos: [30]; default: 0;
|
||||
* Configures whether to force on register clock gate.
|
||||
* 0: No effect
|
||||
* 1: Force on
|
||||
*/
|
||||
uint32_t clk_en:1;
|
||||
/** mem_clock_gate_force_on : R/W; bitpos: [31]; default: 0;
|
||||
* Configures whether to force on ECC memory clock gate.
|
||||
* 0: No effect
|
||||
* 1: Force on
|
||||
*/
|
||||
uint32_t mem_clock_gate_force_on:1;
|
||||
};
|
||||
uint32_t val;
|
||||
} ecc_mult_conf_reg_t;
|
||||
|
||||
|
||||
/** Group: Status registers */
|
||||
/** Type of free register
|
||||
* ECC free status register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** free : R/W; bitpos: [0]; default: 1;
|
||||
* ECC mult free state register
|
||||
* 0: non-free
|
||||
* 1: free
|
||||
*/
|
||||
uint32_t free:1;
|
||||
uint32_t reserved_1:31;
|
||||
};
|
||||
uint32_t val;
|
||||
} ecc_mult_free_reg_t;
|
||||
|
||||
|
||||
/** Group: Version register */
|
||||
/** Type of date register
|
||||
* Version control register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** date : R/W; bitpos: [27:0]; default: 38822288;
|
||||
* ECC mult version control register
|
||||
*/
|
||||
uint32_t date:28;
|
||||
uint32_t reserved_28:4;
|
||||
};
|
||||
uint32_t val;
|
||||
} ecc_mult_date_reg_t;
|
||||
|
||||
|
||||
typedef struct {
|
||||
uint32_t reserved_000[3];
|
||||
volatile ecc_mult_int_raw_reg_t int_raw;
|
||||
volatile ecc_mult_int_st_reg_t int_st;
|
||||
volatile ecc_mult_int_ena_reg_t int_ena;
|
||||
volatile ecc_mult_int_clr_reg_t int_clr;
|
||||
volatile ecc_mult_conf_reg_t conf;
|
||||
volatile ecc_mult_free_reg_t free;
|
||||
uint32_t reserved_024[54];
|
||||
volatile ecc_mult_date_reg_t date;
|
||||
volatile uint32_t k[12];
|
||||
volatile uint32_t px[12];
|
||||
volatile uint32_t py[12];
|
||||
volatile uint32_t qx[12];
|
||||
volatile uint32_t qy[12];
|
||||
volatile uint32_t qz[12];
|
||||
} ecc_mult_dev_t;
|
||||
|
||||
|
||||
#ifndef __cplusplus
|
||||
_Static_assert(sizeof(ecc_mult_dev_t) == 0x220, "Invalid size of ecc_mult_dev_t structure");
|
||||
#endif
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
539
components/soc/esp32s31/register/soc/ecdsa_reg.h
Normal file
539
components/soc/esp32s31/register/soc/ecdsa_reg.h
Normal file
@@ -0,0 +1,539 @@
|
||||
/**
|
||||
* SPDX-FileCopyrightText: 2025 Espressif Systems (Shanghai) CO LTD
|
||||
*
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
*/
|
||||
#pragma once
|
||||
|
||||
#include <stdint.h>
|
||||
#include "soc/soc.h"
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
/** ECDSA_CONF_REG register
|
||||
* ECDSA configure register
|
||||
*/
|
||||
#define ECDSA_CONF_REG (DR_REG_ECDSA_BASE + 0x4)
|
||||
/** ECDSA_WORK_MODE : R/W; bitpos: [1:0]; default: 0;
|
||||
* The work mode bits of ECDSA Accelerator. 0: Signature Verify Mode. 1: Signature
|
||||
* Generate Mode. 2: Export Public Key Mode. 3: invalid.
|
||||
*/
|
||||
#define ECDSA_WORK_MODE 0x00000003U
|
||||
#define ECDSA_WORK_MODE_M (ECDSA_WORK_MODE_V << ECDSA_WORK_MODE_S)
|
||||
#define ECDSA_WORK_MODE_V 0x00000003U
|
||||
#define ECDSA_WORK_MODE_S 0
|
||||
/** ECDSA_ECC_CURVE : R/W; bitpos: [3:2]; default: 0;
|
||||
* The ecc curve select bit of ECDSA Accelerator. 0: P-192. 1: P-256. 2: P-384 3: SM2.
|
||||
*/
|
||||
#define ECDSA_ECC_CURVE 0x00000003U
|
||||
#define ECDSA_ECC_CURVE_M (ECDSA_ECC_CURVE_V << ECDSA_ECC_CURVE_S)
|
||||
#define ECDSA_ECC_CURVE_V 0x00000003U
|
||||
#define ECDSA_ECC_CURVE_S 2
|
||||
/** ECDSA_SOFTWARE_SET_K : R/W; bitpos: [4]; default: 0;
|
||||
* The source of k select bit. 0: k is automatically generated by hardware. 1: k is
|
||||
* written by software.
|
||||
*/
|
||||
#define ECDSA_SOFTWARE_SET_K (BIT(4))
|
||||
#define ECDSA_SOFTWARE_SET_K_M (ECDSA_SOFTWARE_SET_K_V << ECDSA_SOFTWARE_SET_K_S)
|
||||
#define ECDSA_SOFTWARE_SET_K_V 0x00000001U
|
||||
#define ECDSA_SOFTWARE_SET_K_S 4
|
||||
/** ECDSA_SOFTWARE_SET_Z : R/W; bitpos: [5]; default: 0;
|
||||
* The source of z select bit. 0: z is generated from SHA result. 1: z is written by
|
||||
* software.
|
||||
*/
|
||||
#define ECDSA_SOFTWARE_SET_Z (BIT(5))
|
||||
#define ECDSA_SOFTWARE_SET_Z_M (ECDSA_SOFTWARE_SET_Z_V << ECDSA_SOFTWARE_SET_Z_S)
|
||||
#define ECDSA_SOFTWARE_SET_Z_V 0x00000001U
|
||||
#define ECDSA_SOFTWARE_SET_Z_S 5
|
||||
/** ECDSA_DETERMINISTIC_K : R/W; bitpos: [6]; default: 0;
|
||||
* The source of hardware generated k. 0: k is generated by TRNG. 1: k is generated by
|
||||
* deterministic derivation algorithm.
|
||||
*/
|
||||
#define ECDSA_DETERMINISTIC_K (BIT(6))
|
||||
#define ECDSA_DETERMINISTIC_K_M (ECDSA_DETERMINISTIC_K_V << ECDSA_DETERMINISTIC_K_S)
|
||||
#define ECDSA_DETERMINISTIC_K_V 0x00000001U
|
||||
#define ECDSA_DETERMINISTIC_K_S 6
|
||||
/** ECDSA_USE_HARDWARE_KEY : R/W; bitpos: [7]; default: 0;
|
||||
* Configures the ECDSA use software key or hardware key.
|
||||
* 0: Software key.
|
||||
* 1: Hardware key.
|
||||
*/
|
||||
#define ECDSA_USE_HARDWARE_KEY (BIT(7))
|
||||
#define ECDSA_USE_HARDWARE_KEY_M (ECDSA_USE_HARDWARE_KEY_V << ECDSA_USE_HARDWARE_KEY_S)
|
||||
#define ECDSA_USE_HARDWARE_KEY_V 0x00000001U
|
||||
#define ECDSA_USE_HARDWARE_KEY_S 7
|
||||
|
||||
/** ECDSA_CLK_REG register
|
||||
* ECDSA clock gate register
|
||||
*/
|
||||
#define ECDSA_CLK_REG (DR_REG_ECDSA_BASE + 0x8)
|
||||
/** ECDSA_CLK_GATE_FORCE_ON : R/W; bitpos: [0]; default: 0;
|
||||
* Write 1 to force on register clock gate.
|
||||
*/
|
||||
#define ECDSA_CLK_GATE_FORCE_ON (BIT(0))
|
||||
#define ECDSA_CLK_GATE_FORCE_ON_M (ECDSA_CLK_GATE_FORCE_ON_V << ECDSA_CLK_GATE_FORCE_ON_S)
|
||||
#define ECDSA_CLK_GATE_FORCE_ON_V 0x00000001U
|
||||
#define ECDSA_CLK_GATE_FORCE_ON_S 0
|
||||
|
||||
/** ECDSA_INT_RAW_REG register
|
||||
* ECDSA interrupt raw register, valid in level.
|
||||
*/
|
||||
#define ECDSA_INT_RAW_REG (DR_REG_ECDSA_BASE + 0xc)
|
||||
/** ECDSA_PREP_DONE_INT_RAW : RO/WTC/SS; bitpos: [0]; default: 0;
|
||||
* The raw interrupt status bit for the ecdsa_prep_done_int interrupt
|
||||
*/
|
||||
#define ECDSA_PREP_DONE_INT_RAW (BIT(0))
|
||||
#define ECDSA_PREP_DONE_INT_RAW_M (ECDSA_PREP_DONE_INT_RAW_V << ECDSA_PREP_DONE_INT_RAW_S)
|
||||
#define ECDSA_PREP_DONE_INT_RAW_V 0x00000001U
|
||||
#define ECDSA_PREP_DONE_INT_RAW_S 0
|
||||
/** ECDSA_PROC_DONE_INT_RAW : RO/WTC/SS; bitpos: [1]; default: 0;
|
||||
* The raw interrupt status bit for the ecdsa_proc_done_int interrupt
|
||||
*/
|
||||
#define ECDSA_PROC_DONE_INT_RAW (BIT(1))
|
||||
#define ECDSA_PROC_DONE_INT_RAW_M (ECDSA_PROC_DONE_INT_RAW_V << ECDSA_PROC_DONE_INT_RAW_S)
|
||||
#define ECDSA_PROC_DONE_INT_RAW_V 0x00000001U
|
||||
#define ECDSA_PROC_DONE_INT_RAW_S 1
|
||||
/** ECDSA_POST_DONE_INT_RAW : RO/WTC/SS; bitpos: [2]; default: 0;
|
||||
* The raw interrupt status bit for the ecdsa_post_done_int interrupt
|
||||
*/
|
||||
#define ECDSA_POST_DONE_INT_RAW (BIT(2))
|
||||
#define ECDSA_POST_DONE_INT_RAW_M (ECDSA_POST_DONE_INT_RAW_V << ECDSA_POST_DONE_INT_RAW_S)
|
||||
#define ECDSA_POST_DONE_INT_RAW_V 0x00000001U
|
||||
#define ECDSA_POST_DONE_INT_RAW_S 2
|
||||
/** ECDSA_SHA_RELEASE_INT_RAW : RO/WTC/SS; bitpos: [3]; default: 0;
|
||||
* The raw interrupt status bit for the ecdsa_sha_release_int interrupt
|
||||
*/
|
||||
#define ECDSA_SHA_RELEASE_INT_RAW (BIT(3))
|
||||
#define ECDSA_SHA_RELEASE_INT_RAW_M (ECDSA_SHA_RELEASE_INT_RAW_V << ECDSA_SHA_RELEASE_INT_RAW_S)
|
||||
#define ECDSA_SHA_RELEASE_INT_RAW_V 0x00000001U
|
||||
#define ECDSA_SHA_RELEASE_INT_RAW_S 3
|
||||
|
||||
/** ECDSA_INT_ST_REG register
|
||||
* ECDSA interrupt status register.
|
||||
*/
|
||||
#define ECDSA_INT_ST_REG (DR_REG_ECDSA_BASE + 0x10)
|
||||
/** ECDSA_PREP_DONE_INT_ST : RO; bitpos: [0]; default: 0;
|
||||
* The masked interrupt status bit for the ecdsa_prep_done_int interrupt
|
||||
*/
|
||||
#define ECDSA_PREP_DONE_INT_ST (BIT(0))
|
||||
#define ECDSA_PREP_DONE_INT_ST_M (ECDSA_PREP_DONE_INT_ST_V << ECDSA_PREP_DONE_INT_ST_S)
|
||||
#define ECDSA_PREP_DONE_INT_ST_V 0x00000001U
|
||||
#define ECDSA_PREP_DONE_INT_ST_S 0
|
||||
/** ECDSA_PROC_DONE_INT_ST : RO; bitpos: [1]; default: 0;
|
||||
* The masked interrupt status bit for the ecdsa_proc_done_int interrupt
|
||||
*/
|
||||
#define ECDSA_PROC_DONE_INT_ST (BIT(1))
|
||||
#define ECDSA_PROC_DONE_INT_ST_M (ECDSA_PROC_DONE_INT_ST_V << ECDSA_PROC_DONE_INT_ST_S)
|
||||
#define ECDSA_PROC_DONE_INT_ST_V 0x00000001U
|
||||
#define ECDSA_PROC_DONE_INT_ST_S 1
|
||||
/** ECDSA_POST_DONE_INT_ST : RO; bitpos: [2]; default: 0;
|
||||
* The masked interrupt status bit for the ecdsa_post_done_int interrupt
|
||||
*/
|
||||
#define ECDSA_POST_DONE_INT_ST (BIT(2))
|
||||
#define ECDSA_POST_DONE_INT_ST_M (ECDSA_POST_DONE_INT_ST_V << ECDSA_POST_DONE_INT_ST_S)
|
||||
#define ECDSA_POST_DONE_INT_ST_V 0x00000001U
|
||||
#define ECDSA_POST_DONE_INT_ST_S 2
|
||||
/** ECDSA_SHA_RELEASE_INT_ST : RO; bitpos: [3]; default: 0;
|
||||
* The masked interrupt status bit for the ecdsa_sha_release_int interrupt
|
||||
*/
|
||||
#define ECDSA_SHA_RELEASE_INT_ST (BIT(3))
|
||||
#define ECDSA_SHA_RELEASE_INT_ST_M (ECDSA_SHA_RELEASE_INT_ST_V << ECDSA_SHA_RELEASE_INT_ST_S)
|
||||
#define ECDSA_SHA_RELEASE_INT_ST_V 0x00000001U
|
||||
#define ECDSA_SHA_RELEASE_INT_ST_S 3
|
||||
|
||||
/** ECDSA_INT_ENA_REG register
|
||||
* ECDSA interrupt enable register.
|
||||
*/
|
||||
#define ECDSA_INT_ENA_REG (DR_REG_ECDSA_BASE + 0x14)
|
||||
/** ECDSA_PREP_DONE_INT_ENA : R/W; bitpos: [0]; default: 0;
|
||||
* The interrupt enable bit for the ecdsa_prep_done_int interrupt
|
||||
*/
|
||||
#define ECDSA_PREP_DONE_INT_ENA (BIT(0))
|
||||
#define ECDSA_PREP_DONE_INT_ENA_M (ECDSA_PREP_DONE_INT_ENA_V << ECDSA_PREP_DONE_INT_ENA_S)
|
||||
#define ECDSA_PREP_DONE_INT_ENA_V 0x00000001U
|
||||
#define ECDSA_PREP_DONE_INT_ENA_S 0
|
||||
/** ECDSA_PROC_DONE_INT_ENA : R/W; bitpos: [1]; default: 0;
|
||||
* The interrupt enable bit for the ecdsa_proc_done_int interrupt
|
||||
*/
|
||||
#define ECDSA_PROC_DONE_INT_ENA (BIT(1))
|
||||
#define ECDSA_PROC_DONE_INT_ENA_M (ECDSA_PROC_DONE_INT_ENA_V << ECDSA_PROC_DONE_INT_ENA_S)
|
||||
#define ECDSA_PROC_DONE_INT_ENA_V 0x00000001U
|
||||
#define ECDSA_PROC_DONE_INT_ENA_S 1
|
||||
/** ECDSA_POST_DONE_INT_ENA : R/W; bitpos: [2]; default: 0;
|
||||
* The interrupt enable bit for the ecdsa_post_done_int interrupt
|
||||
*/
|
||||
#define ECDSA_POST_DONE_INT_ENA (BIT(2))
|
||||
#define ECDSA_POST_DONE_INT_ENA_M (ECDSA_POST_DONE_INT_ENA_V << ECDSA_POST_DONE_INT_ENA_S)
|
||||
#define ECDSA_POST_DONE_INT_ENA_V 0x00000001U
|
||||
#define ECDSA_POST_DONE_INT_ENA_S 2
|
||||
/** ECDSA_SHA_RELEASE_INT_ENA : R/W; bitpos: [3]; default: 0;
|
||||
* The interrupt enable bit for the ecdsa_sha_release_int interrupt
|
||||
*/
|
||||
#define ECDSA_SHA_RELEASE_INT_ENA (BIT(3))
|
||||
#define ECDSA_SHA_RELEASE_INT_ENA_M (ECDSA_SHA_RELEASE_INT_ENA_V << ECDSA_SHA_RELEASE_INT_ENA_S)
|
||||
#define ECDSA_SHA_RELEASE_INT_ENA_V 0x00000001U
|
||||
#define ECDSA_SHA_RELEASE_INT_ENA_S 3
|
||||
|
||||
/** ECDSA_INT_CLR_REG register
|
||||
* ECDSA interrupt clear register.
|
||||
*/
|
||||
#define ECDSA_INT_CLR_REG (DR_REG_ECDSA_BASE + 0x18)
|
||||
/** ECDSA_PREP_DONE_INT_CLR : WT; bitpos: [0]; default: 0;
|
||||
* Set this bit to clear the ecdsa_prep_done_int interrupt
|
||||
*/
|
||||
#define ECDSA_PREP_DONE_INT_CLR (BIT(0))
|
||||
#define ECDSA_PREP_DONE_INT_CLR_M (ECDSA_PREP_DONE_INT_CLR_V << ECDSA_PREP_DONE_INT_CLR_S)
|
||||
#define ECDSA_PREP_DONE_INT_CLR_V 0x00000001U
|
||||
#define ECDSA_PREP_DONE_INT_CLR_S 0
|
||||
/** ECDSA_PROC_DONE_INT_CLR : WT; bitpos: [1]; default: 0;
|
||||
* Set this bit to clear the ecdsa_proc_done_int interrupt
|
||||
*/
|
||||
#define ECDSA_PROC_DONE_INT_CLR (BIT(1))
|
||||
#define ECDSA_PROC_DONE_INT_CLR_M (ECDSA_PROC_DONE_INT_CLR_V << ECDSA_PROC_DONE_INT_CLR_S)
|
||||
#define ECDSA_PROC_DONE_INT_CLR_V 0x00000001U
|
||||
#define ECDSA_PROC_DONE_INT_CLR_S 1
|
||||
/** ECDSA_POST_DONE_INT_CLR : WT; bitpos: [2]; default: 0;
|
||||
* Set this bit to clear the ecdsa_post_done_int interrupt
|
||||
*/
|
||||
#define ECDSA_POST_DONE_INT_CLR (BIT(2))
|
||||
#define ECDSA_POST_DONE_INT_CLR_M (ECDSA_POST_DONE_INT_CLR_V << ECDSA_POST_DONE_INT_CLR_S)
|
||||
#define ECDSA_POST_DONE_INT_CLR_V 0x00000001U
|
||||
#define ECDSA_POST_DONE_INT_CLR_S 2
|
||||
/** ECDSA_SHA_RELEASE_INT_CLR : WT; bitpos: [3]; default: 0;
|
||||
* Set this bit to clear the ecdsa_sha_release_int interrupt
|
||||
*/
|
||||
#define ECDSA_SHA_RELEASE_INT_CLR (BIT(3))
|
||||
#define ECDSA_SHA_RELEASE_INT_CLR_M (ECDSA_SHA_RELEASE_INT_CLR_V << ECDSA_SHA_RELEASE_INT_CLR_S)
|
||||
#define ECDSA_SHA_RELEASE_INT_CLR_V 0x00000001U
|
||||
#define ECDSA_SHA_RELEASE_INT_CLR_S 3
|
||||
|
||||
/** ECDSA_START_REG register
|
||||
* ECDSA start register
|
||||
*/
|
||||
#define ECDSA_START_REG (DR_REG_ECDSA_BASE + 0x1c)
|
||||
/** ECDSA_START : WT; bitpos: [0]; default: 0;
|
||||
* Write 1 to start calculation of ECDSA Accelerator. This bit will be self-cleared
|
||||
* after configuration.
|
||||
*/
|
||||
#define ECDSA_START (BIT(0))
|
||||
#define ECDSA_START_M (ECDSA_START_V << ECDSA_START_S)
|
||||
#define ECDSA_START_V 0x00000001U
|
||||
#define ECDSA_START_S 0
|
||||
/** ECDSA_LOAD_DONE : WT; bitpos: [1]; default: 0;
|
||||
* Write 1 to input load done signal of ECDSA Accelerator. This bit will be
|
||||
* self-cleared after configuration.
|
||||
*/
|
||||
#define ECDSA_LOAD_DONE (BIT(1))
|
||||
#define ECDSA_LOAD_DONE_M (ECDSA_LOAD_DONE_V << ECDSA_LOAD_DONE_S)
|
||||
#define ECDSA_LOAD_DONE_V 0x00000001U
|
||||
#define ECDSA_LOAD_DONE_S 1
|
||||
/** ECDSA_GET_DONE : WT; bitpos: [2]; default: 0;
|
||||
* Write 1 to input get done signal of ECDSA Accelerator. This bit will be
|
||||
* self-cleared after configuration.
|
||||
*/
|
||||
#define ECDSA_GET_DONE (BIT(2))
|
||||
#define ECDSA_GET_DONE_M (ECDSA_GET_DONE_V << ECDSA_GET_DONE_S)
|
||||
#define ECDSA_GET_DONE_V 0x00000001U
|
||||
#define ECDSA_GET_DONE_S 2
|
||||
|
||||
/** ECDSA_STATE_REG register
|
||||
* ECDSA status register
|
||||
*/
|
||||
#define ECDSA_STATE_REG (DR_REG_ECDSA_BASE + 0x20)
|
||||
/** ECDSA_BUSY : RO; bitpos: [1:0]; default: 0;
|
||||
* The status bits of ECDSA Accelerator. ECDSA is at 0: IDLE, 1: LOAD, 2: GET, 3: BUSY
|
||||
* state.
|
||||
*/
|
||||
#define ECDSA_BUSY 0x00000003U
|
||||
#define ECDSA_BUSY_M (ECDSA_BUSY_V << ECDSA_BUSY_S)
|
||||
#define ECDSA_BUSY_V 0x00000003U
|
||||
#define ECDSA_BUSY_S 0
|
||||
|
||||
/** ECDSA_RESULT_REG register
|
||||
* ECDSA result register
|
||||
*/
|
||||
#define ECDSA_RESULT_REG (DR_REG_ECDSA_BASE + 0x24)
|
||||
/** ECDSA_OPERATION_RESULT : RO/SS; bitpos: [0]; default: 0;
|
||||
* The operation result bit of ECDSA Accelerator, only valid when ECDSA calculation is
|
||||
* done.
|
||||
*/
|
||||
#define ECDSA_OPERATION_RESULT (BIT(0))
|
||||
#define ECDSA_OPERATION_RESULT_M (ECDSA_OPERATION_RESULT_V << ECDSA_OPERATION_RESULT_S)
|
||||
#define ECDSA_OPERATION_RESULT_V 0x00000001U
|
||||
#define ECDSA_OPERATION_RESULT_S 0
|
||||
|
||||
/** ECDSA_TIMEOUT_LIMIT_REG register
|
||||
* ECDSA timeout limit configure register
|
||||
*/
|
||||
#define ECDSA_TIMEOUT_LIMIT_REG (DR_REG_ECDSA_BASE + 0x28)
|
||||
/** ECDSA_TIMEOUT_LIMIT : R/W; bitpos: [31:0]; default: 4294967295;
|
||||
* The timeout limitation for waiting sub-IP.
|
||||
*/
|
||||
#define ECDSA_TIMEOUT_LIMIT 0xFFFFFFFFU
|
||||
#define ECDSA_TIMEOUT_LIMIT_M (ECDSA_TIMEOUT_LIMIT_V << ECDSA_TIMEOUT_LIMIT_S)
|
||||
#define ECDSA_TIMEOUT_LIMIT_V 0xFFFFFFFFU
|
||||
#define ECDSA_TIMEOUT_LIMIT_S 0
|
||||
|
||||
/** ECDSA_FREE_REG register
|
||||
* ECDSA free state
|
||||
*/
|
||||
#define ECDSA_FREE_REG (DR_REG_ECDSA_BASE + 0x2c)
|
||||
/** ECDSA_FREE : R/W; bitpos: [0]; default: 1;
|
||||
* Represents if ECDSA Accelerator is free or not.
|
||||
* 0: non-free
|
||||
* 1: free
|
||||
*/
|
||||
#define ECDSA_FREE (BIT(0))
|
||||
#define ECDSA_FREE_M (ECDSA_FREE_V << ECDSA_FREE_S)
|
||||
#define ECDSA_FREE_V 0x00000001U
|
||||
#define ECDSA_FREE_S 0
|
||||
|
||||
/** ECDSA_KEY_0_REG register
|
||||
* ECDSA key data register 0
|
||||
*/
|
||||
#define ECDSA_KEY_0_REG (DR_REG_ECDSA_BASE + 0x40)
|
||||
/** ECDSA_KEY_0 : R/W; bitpos: [31:0]; default: 0;
|
||||
* These bits stores key_0 that is a part of key material.
|
||||
*/
|
||||
#define ECDSA_KEY_0 0xFFFFFFFFU
|
||||
#define ECDSA_KEY_0_M (ECDSA_KEY_0_V << ECDSA_KEY_0_S)
|
||||
#define ECDSA_KEY_0_V 0xFFFFFFFFU
|
||||
#define ECDSA_KEY_0_S 0
|
||||
|
||||
/** ECDSA_KEY_1_REG register
|
||||
* ECDSA key data register 1
|
||||
*/
|
||||
#define ECDSA_KEY_1_REG (DR_REG_ECDSA_BASE + 0x44)
|
||||
/** ECDSA_KEY_1 : R/W; bitpos: [31:0]; default: 0;
|
||||
* These bits stores key_1 that is a part of key material.
|
||||
*/
|
||||
#define ECDSA_KEY_1 0xFFFFFFFFU
|
||||
#define ECDSA_KEY_1_M (ECDSA_KEY_1_V << ECDSA_KEY_1_S)
|
||||
#define ECDSA_KEY_1_V 0xFFFFFFFFU
|
||||
#define ECDSA_KEY_1_S 0
|
||||
|
||||
/** ECDSA_KEY_2_REG register
|
||||
* ECDSA key data register 2
|
||||
*/
|
||||
#define ECDSA_KEY_2_REG (DR_REG_ECDSA_BASE + 0x48)
|
||||
/** ECDSA_KEY_2 : R/W; bitpos: [31:0]; default: 0;
|
||||
* These bits stores key_2 that is a part of key material.
|
||||
*/
|
||||
#define ECDSA_KEY_2 0xFFFFFFFFU
|
||||
#define ECDSA_KEY_2_M (ECDSA_KEY_2_V << ECDSA_KEY_2_S)
|
||||
#define ECDSA_KEY_2_V 0xFFFFFFFFU
|
||||
#define ECDSA_KEY_2_S 0
|
||||
|
||||
/** ECDSA_KEY_3_REG register
|
||||
* ECDSA key data register 3
|
||||
*/
|
||||
#define ECDSA_KEY_3_REG (DR_REG_ECDSA_BASE + 0x4c)
|
||||
/** ECDSA_KEY_3 : R/W; bitpos: [31:0]; default: 0;
|
||||
* These bits stores key_3 that is a part of key material.
|
||||
*/
|
||||
#define ECDSA_KEY_3 0xFFFFFFFFU
|
||||
#define ECDSA_KEY_3_M (ECDSA_KEY_3_V << ECDSA_KEY_3_S)
|
||||
#define ECDSA_KEY_3_V 0xFFFFFFFFU
|
||||
#define ECDSA_KEY_3_S 0
|
||||
|
||||
/** ECDSA_KEY_4_REG register
|
||||
* ECDSA key data register 4
|
||||
*/
|
||||
#define ECDSA_KEY_4_REG (DR_REG_ECDSA_BASE + 0x50)
|
||||
/** ECDSA_KEY_4 : R/W; bitpos: [31:0]; default: 0;
|
||||
* These bits stores key_4 that is a part of key material.
|
||||
*/
|
||||
#define ECDSA_KEY_4 0xFFFFFFFFU
|
||||
#define ECDSA_KEY_4_M (ECDSA_KEY_4_V << ECDSA_KEY_4_S)
|
||||
#define ECDSA_KEY_4_V 0xFFFFFFFFU
|
||||
#define ECDSA_KEY_4_S 0
|
||||
|
||||
/** ECDSA_KEY_5_REG register
|
||||
* ECDSA key data register 5
|
||||
*/
|
||||
#define ECDSA_KEY_5_REG (DR_REG_ECDSA_BASE + 0x54)
|
||||
/** ECDSA_KEY_5 : R/W; bitpos: [31:0]; default: 0;
|
||||
* These bits stores key_5 that is a part of key material.
|
||||
*/
|
||||
#define ECDSA_KEY_5 0xFFFFFFFFU
|
||||
#define ECDSA_KEY_5_M (ECDSA_KEY_5_V << ECDSA_KEY_5_S)
|
||||
#define ECDSA_KEY_5_V 0xFFFFFFFFU
|
||||
#define ECDSA_KEY_5_S 0
|
||||
|
||||
/** ECDSA_KEY_6_REG register
|
||||
* ECDSA key data register 6
|
||||
*/
|
||||
#define ECDSA_KEY_6_REG (DR_REG_ECDSA_BASE + 0x58)
|
||||
/** ECDSA_KEY_6 : R/W; bitpos: [31:0]; default: 0;
|
||||
* These bits stores key_6 that is a part of key material.
|
||||
*/
|
||||
#define ECDSA_KEY_6 0xFFFFFFFFU
|
||||
#define ECDSA_KEY_6_M (ECDSA_KEY_6_V << ECDSA_KEY_6_S)
|
||||
#define ECDSA_KEY_6_V 0xFFFFFFFFU
|
||||
#define ECDSA_KEY_6_S 0
|
||||
|
||||
/** ECDSA_KEY_7_REG register
|
||||
* ECDSA key data register 7
|
||||
*/
|
||||
#define ECDSA_KEY_7_REG (DR_REG_ECDSA_BASE + 0x5c)
|
||||
/** ECDSA_KEY_7 : R/W; bitpos: [31:0]; default: 0;
|
||||
* These bits stores key_7 that is a part of key material.
|
||||
*/
|
||||
#define ECDSA_KEY_7 0xFFFFFFFFU
|
||||
#define ECDSA_KEY_7_M (ECDSA_KEY_7_V << ECDSA_KEY_7_S)
|
||||
#define ECDSA_KEY_7_V 0xFFFFFFFFU
|
||||
#define ECDSA_KEY_7_S 0
|
||||
|
||||
/** ECDSA_KEY_8_REG register
|
||||
* ECDSA key data register 8
|
||||
*/
|
||||
#define ECDSA_KEY_8_REG (DR_REG_ECDSA_BASE + 0x60)
|
||||
/** ECDSA_KEY_8 : R/W; bitpos: [31:0]; default: 0;
|
||||
* These bits stores key_8 that is a part of key material.
|
||||
*/
|
||||
#define ECDSA_KEY_8 0xFFFFFFFFU
|
||||
#define ECDSA_KEY_8_M (ECDSA_KEY_8_V << ECDSA_KEY_8_S)
|
||||
#define ECDSA_KEY_8_V 0xFFFFFFFFU
|
||||
#define ECDSA_KEY_8_S 0
|
||||
|
||||
/** ECDSA_KEY_9_REG register
|
||||
* ECDSA key data register 9
|
||||
*/
|
||||
#define ECDSA_KEY_9_REG (DR_REG_ECDSA_BASE + 0x64)
|
||||
/** ECDSA_KEY_9 : R/W; bitpos: [31:0]; default: 0;
|
||||
* These bits stores key_9 that is a part of key material.
|
||||
*/
|
||||
#define ECDSA_KEY_9 0xFFFFFFFFU
|
||||
#define ECDSA_KEY_9_M (ECDSA_KEY_9_V << ECDSA_KEY_9_S)
|
||||
#define ECDSA_KEY_9_V 0xFFFFFFFFU
|
||||
#define ECDSA_KEY_9_S 0
|
||||
|
||||
/** ECDSA_KEY_10_REG register
|
||||
* ECDSA key data register 10
|
||||
*/
|
||||
#define ECDSA_KEY_10_REG (DR_REG_ECDSA_BASE + 0x68)
|
||||
/** ECDSA_KEY_10 : R/W; bitpos: [31:0]; default: 0;
|
||||
* These bits stores key_10 that is a part of key material.
|
||||
*/
|
||||
#define ECDSA_KEY_10 0xFFFFFFFFU
|
||||
#define ECDSA_KEY_10_M (ECDSA_KEY_10_V << ECDSA_KEY_10_S)
|
||||
#define ECDSA_KEY_10_V 0xFFFFFFFFU
|
||||
#define ECDSA_KEY_10_S 0
|
||||
|
||||
/** ECDSA_KEY_11_REG register
|
||||
* ECDSA key data register 11
|
||||
*/
|
||||
#define ECDSA_KEY_11_REG (DR_REG_ECDSA_BASE + 0x6c)
|
||||
/** ECDSA_KEY_11 : R/W; bitpos: [31:0]; default: 0;
|
||||
* These bits stores key_11 that is a part of key material.
|
||||
*/
|
||||
#define ECDSA_KEY_11 0xFFFFFFFFU
|
||||
#define ECDSA_KEY_11_M (ECDSA_KEY_11_V << ECDSA_KEY_11_S)
|
||||
#define ECDSA_KEY_11_V 0xFFFFFFFFU
|
||||
#define ECDSA_KEY_11_S 0
|
||||
|
||||
/** ECDSA_DATE_REG register
|
||||
* Version control register
|
||||
*/
|
||||
#define ECDSA_DATE_REG (DR_REG_ECDSA_BASE + 0xfc)
|
||||
/** ECDSA_DATE : R/W; bitpos: [27:0]; default: 38830480;
|
||||
* ECDSA version control register
|
||||
*/
|
||||
#define ECDSA_DATE 0x0FFFFFFFU
|
||||
#define ECDSA_DATE_M (ECDSA_DATE_V << ECDSA_DATE_S)
|
||||
#define ECDSA_DATE_V 0x0FFFFFFFU
|
||||
#define ECDSA_DATE_S 0
|
||||
|
||||
/** ECDSA_SHA_MODE_REG register
|
||||
* ECDSA control SHA register
|
||||
*/
|
||||
#define ECDSA_SHA_MODE_REG (DR_REG_ECDSA_BASE + 0x200)
|
||||
/** ECDSA_SHA_MODE : R/W; bitpos: [3:0]; default: 0;
|
||||
* The work mode bits of SHA Calculator in ECDSA Accelerator. 0: SHA1. 1: SHA-224. 2:
|
||||
* SHA-256. 3: SHA-384 4: SHA-512. 5: SHA-512224. 6: SHA-512256. 14:SM3. Others:
|
||||
* invalid.
|
||||
*/
|
||||
#define ECDSA_SHA_MODE 0x0000000FU
|
||||
#define ECDSA_SHA_MODE_M (ECDSA_SHA_MODE_V << ECDSA_SHA_MODE_S)
|
||||
#define ECDSA_SHA_MODE_V 0x0000000FU
|
||||
#define ECDSA_SHA_MODE_S 0
|
||||
|
||||
/** ECDSA_SHA_START_REG register
|
||||
* ECDSA control SHA register
|
||||
*/
|
||||
#define ECDSA_SHA_START_REG (DR_REG_ECDSA_BASE + 0x210)
|
||||
/** ECDSA_SHA_START : WT; bitpos: [0]; default: 0;
|
||||
* Write 1 to start the first calculation of SHA Calculator in ECDSA Accelerator. This
|
||||
* bit will be self-cleared after configuration.
|
||||
*/
|
||||
#define ECDSA_SHA_START (BIT(0))
|
||||
#define ECDSA_SHA_START_M (ECDSA_SHA_START_V << ECDSA_SHA_START_S)
|
||||
#define ECDSA_SHA_START_V 0x00000001U
|
||||
#define ECDSA_SHA_START_S 0
|
||||
|
||||
/** ECDSA_SHA_CONTINUE_REG register
|
||||
* ECDSA control SHA register
|
||||
*/
|
||||
#define ECDSA_SHA_CONTINUE_REG (DR_REG_ECDSA_BASE + 0x214)
|
||||
/** ECDSA_SHA_CONTINUE : WT; bitpos: [0]; default: 0;
|
||||
* Write 1 to start the latter calculation of SHA Calculator in ECDSA Accelerator. This
|
||||
* bit will be self-cleared after configuration.
|
||||
*/
|
||||
#define ECDSA_SHA_CONTINUE (BIT(0))
|
||||
#define ECDSA_SHA_CONTINUE_M (ECDSA_SHA_CONTINUE_V << ECDSA_SHA_CONTINUE_S)
|
||||
#define ECDSA_SHA_CONTINUE_V 0x00000001U
|
||||
#define ECDSA_SHA_CONTINUE_S 0
|
||||
|
||||
/** ECDSA_SHA_BUSY_REG register
|
||||
* ECDSA status register
|
||||
*/
|
||||
#define ECDSA_SHA_BUSY_REG (DR_REG_ECDSA_BASE + 0x218)
|
||||
/** ECDSA_SHA_BUSY : RO; bitpos: [0]; default: 0;
|
||||
* The busy status bit of SHA Calculator in ECDSA Accelerator. 1:SHA is in
|
||||
* calculation. 0: SHA is idle.
|
||||
*/
|
||||
#define ECDSA_SHA_BUSY (BIT(0))
|
||||
#define ECDSA_SHA_BUSY_M (ECDSA_SHA_BUSY_V << ECDSA_SHA_BUSY_S)
|
||||
#define ECDSA_SHA_BUSY_V 0x00000001U
|
||||
#define ECDSA_SHA_BUSY_S 0
|
||||
|
||||
/** ECDSA_MESSAGE_MEM register
|
||||
* The memory that stores message.
|
||||
*/
|
||||
#define ECDSA_MESSAGE_MEM (DR_REG_ECDSA_BASE + 0x280)
|
||||
#define ECDSA_MESSAGE_MEM_SIZE_BYTES 64
|
||||
|
||||
/** ECDSA_R_MEM register
|
||||
* The memory that stores r.
|
||||
*/
|
||||
#define ECDSA_R_MEM (DR_REG_ECDSA_BASE + 0x3e0)
|
||||
#define ECDSA_R_MEM_SIZE_BYTES 48
|
||||
|
||||
/** ECDSA_S_MEM register
|
||||
* The memory that stores s.
|
||||
*/
|
||||
#define ECDSA_S_MEM (DR_REG_ECDSA_BASE + 0x410)
|
||||
#define ECDSA_S_MEM_SIZE_BYTES 48
|
||||
|
||||
/** ECDSA_Z_MEM register
|
||||
* The memory that stores software written z.
|
||||
*/
|
||||
#define ECDSA_Z_MEM (DR_REG_ECDSA_BASE + 0x440)
|
||||
#define ECDSA_Z_MEM_SIZE_BYTES 48
|
||||
|
||||
/** ECDSA_QAX_MEM register
|
||||
* The memory that stores x coordinates of QA or software written k.
|
||||
*/
|
||||
#define ECDSA_QAX_MEM (DR_REG_ECDSA_BASE + 0x470)
|
||||
#define ECDSA_QAX_MEM_SIZE_BYTES 48
|
||||
|
||||
/** ECDSA_QAY_MEM register
|
||||
* The memory that stores y coordinates of QA.
|
||||
*/
|
||||
#define ECDSA_QAY_MEM (DR_REG_ECDSA_BASE + 0x4a0)
|
||||
#define ECDSA_QAY_MEM_SIZE_BYTES 48
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
557
components/soc/esp32s31/register/soc/ecdsa_struct.h
Normal file
557
components/soc/esp32s31/register/soc/ecdsa_struct.h
Normal file
@@ -0,0 +1,557 @@
|
||||
/**
|
||||
* SPDX-FileCopyrightText: 2025 Espressif Systems (Shanghai) CO LTD
|
||||
*
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
*/
|
||||
#pragma once
|
||||
|
||||
#include <stdint.h>
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
/** Group: Data Memory */
|
||||
|
||||
/** Group: Configuration registers */
|
||||
/** Type of conf register
|
||||
* ECDSA configure register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** work_mode : R/W; bitpos: [1:0]; default: 0;
|
||||
* The work mode bits of ECDSA Accelerator. 0: Signature Verify Mode. 1: Signature
|
||||
* Generate Mode. 2: Export Public Key Mode. 3: invalid.
|
||||
*/
|
||||
uint32_t work_mode:2;
|
||||
/** ecc_curve : R/W; bitpos: [3:2]; default: 0;
|
||||
* The ecc curve select bit of ECDSA Accelerator. 0: P-192. 1: P-256. 2: P-384 3: SM2.
|
||||
*/
|
||||
uint32_t ecc_curve:2;
|
||||
/** software_set_k : R/W; bitpos: [4]; default: 0;
|
||||
* The source of k select bit. 0: k is automatically generated by hardware. 1: k is
|
||||
* written by software.
|
||||
*/
|
||||
uint32_t software_set_k:1;
|
||||
/** software_set_z : R/W; bitpos: [5]; default: 0;
|
||||
* The source of z select bit. 0: z is generated from SHA result. 1: z is written by
|
||||
* software.
|
||||
*/
|
||||
uint32_t software_set_z:1;
|
||||
/** deterministic_k : R/W; bitpos: [6]; default: 0;
|
||||
* The source of hardware generated k. 0: k is generated by TRNG. 1: k is generated by
|
||||
* deterministic derivation algorithm.
|
||||
*/
|
||||
uint32_t deterministic_k:1;
|
||||
/** use_hardware_key : R/W; bitpos: [7]; default: 0;
|
||||
* Configures the ECDSA use software key or hardware key.
|
||||
* 0: Software key.
|
||||
* 1: Hardware key.
|
||||
*/
|
||||
uint32_t use_hardware_key:1;
|
||||
uint32_t reserved_8:24;
|
||||
};
|
||||
uint32_t val;
|
||||
} ecdsa_conf_reg_t;
|
||||
|
||||
/** Type of start register
|
||||
* ECDSA start register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** start : WT; bitpos: [0]; default: 0;
|
||||
* Write 1 to start calculation of ECDSA Accelerator. This bit will be self-cleared
|
||||
* after configuration.
|
||||
*/
|
||||
uint32_t start:1;
|
||||
/** load_done : WT; bitpos: [1]; default: 0;
|
||||
* Write 1 to input load done signal of ECDSA Accelerator. This bit will be
|
||||
* self-cleared after configuration.
|
||||
*/
|
||||
uint32_t load_done:1;
|
||||
/** get_done : WT; bitpos: [2]; default: 0;
|
||||
* Write 1 to input get done signal of ECDSA Accelerator. This bit will be
|
||||
* self-cleared after configuration.
|
||||
*/
|
||||
uint32_t get_done:1;
|
||||
uint32_t reserved_3:29;
|
||||
};
|
||||
uint32_t val;
|
||||
} ecdsa_start_reg_t;
|
||||
|
||||
/** Type of timeout_limit register
|
||||
* ECDSA timeout limit configure register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** timeout_limit : R/W; bitpos: [31:0]; default: 4294967295;
|
||||
* The timeout limitation for waiting sub-IP.
|
||||
*/
|
||||
uint32_t timeout_limit:32;
|
||||
};
|
||||
uint32_t val;
|
||||
} ecdsa_timeout_limit_reg_t;
|
||||
|
||||
|
||||
/** Group: Clock and reset registers */
|
||||
/** Type of clk register
|
||||
* ECDSA clock gate register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** clk_gate_force_on : R/W; bitpos: [0]; default: 0;
|
||||
* Write 1 to force on register clock gate.
|
||||
*/
|
||||
uint32_t clk_gate_force_on:1;
|
||||
uint32_t reserved_1:31;
|
||||
};
|
||||
uint32_t val;
|
||||
} ecdsa_clk_reg_t;
|
||||
|
||||
|
||||
/** Group: Interrupt registers */
|
||||
/** Type of int_raw register
|
||||
* ECDSA interrupt raw register, valid in level.
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** prep_done_int_raw : RO/WTC/SS; bitpos: [0]; default: 0;
|
||||
* The raw interrupt status bit for the ecdsa_prep_done_int interrupt
|
||||
*/
|
||||
uint32_t prep_done_int_raw:1;
|
||||
/** proc_done_int_raw : RO/WTC/SS; bitpos: [1]; default: 0;
|
||||
* The raw interrupt status bit for the ecdsa_proc_done_int interrupt
|
||||
*/
|
||||
uint32_t proc_done_int_raw:1;
|
||||
/** post_done_int_raw : RO/WTC/SS; bitpos: [2]; default: 0;
|
||||
* The raw interrupt status bit for the ecdsa_post_done_int interrupt
|
||||
*/
|
||||
uint32_t post_done_int_raw:1;
|
||||
/** sha_release_int_raw : RO/WTC/SS; bitpos: [3]; default: 0;
|
||||
* The raw interrupt status bit for the ecdsa_sha_release_int interrupt
|
||||
*/
|
||||
uint32_t sha_release_int_raw:1;
|
||||
uint32_t reserved_4:28;
|
||||
};
|
||||
uint32_t val;
|
||||
} ecdsa_int_raw_reg_t;
|
||||
|
||||
/** Type of int_st register
|
||||
* ECDSA interrupt status register.
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** prep_done_int_st : RO; bitpos: [0]; default: 0;
|
||||
* The masked interrupt status bit for the ecdsa_prep_done_int interrupt
|
||||
*/
|
||||
uint32_t prep_done_int_st:1;
|
||||
/** proc_done_int_st : RO; bitpos: [1]; default: 0;
|
||||
* The masked interrupt status bit for the ecdsa_proc_done_int interrupt
|
||||
*/
|
||||
uint32_t proc_done_int_st:1;
|
||||
/** post_done_int_st : RO; bitpos: [2]; default: 0;
|
||||
* The masked interrupt status bit for the ecdsa_post_done_int interrupt
|
||||
*/
|
||||
uint32_t post_done_int_st:1;
|
||||
/** sha_release_int_st : RO; bitpos: [3]; default: 0;
|
||||
* The masked interrupt status bit for the ecdsa_sha_release_int interrupt
|
||||
*/
|
||||
uint32_t sha_release_int_st:1;
|
||||
uint32_t reserved_4:28;
|
||||
};
|
||||
uint32_t val;
|
||||
} ecdsa_int_st_reg_t;
|
||||
|
||||
/** Type of int_ena register
|
||||
* ECDSA interrupt enable register.
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** prep_done_int_ena : R/W; bitpos: [0]; default: 0;
|
||||
* The interrupt enable bit for the ecdsa_prep_done_int interrupt
|
||||
*/
|
||||
uint32_t prep_done_int_ena:1;
|
||||
/** proc_done_int_ena : R/W; bitpos: [1]; default: 0;
|
||||
* The interrupt enable bit for the ecdsa_proc_done_int interrupt
|
||||
*/
|
||||
uint32_t proc_done_int_ena:1;
|
||||
/** post_done_int_ena : R/W; bitpos: [2]; default: 0;
|
||||
* The interrupt enable bit for the ecdsa_post_done_int interrupt
|
||||
*/
|
||||
uint32_t post_done_int_ena:1;
|
||||
/** sha_release_int_ena : R/W; bitpos: [3]; default: 0;
|
||||
* The interrupt enable bit for the ecdsa_sha_release_int interrupt
|
||||
*/
|
||||
uint32_t sha_release_int_ena:1;
|
||||
uint32_t reserved_4:28;
|
||||
};
|
||||
uint32_t val;
|
||||
} ecdsa_int_ena_reg_t;
|
||||
|
||||
/** Type of int_clr register
|
||||
* ECDSA interrupt clear register.
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** prep_done_int_clr : WT; bitpos: [0]; default: 0;
|
||||
* Set this bit to clear the ecdsa_prep_done_int interrupt
|
||||
*/
|
||||
uint32_t prep_done_int_clr:1;
|
||||
/** proc_done_int_clr : WT; bitpos: [1]; default: 0;
|
||||
* Set this bit to clear the ecdsa_proc_done_int interrupt
|
||||
*/
|
||||
uint32_t proc_done_int_clr:1;
|
||||
/** post_done_int_clr : WT; bitpos: [2]; default: 0;
|
||||
* Set this bit to clear the ecdsa_post_done_int interrupt
|
||||
*/
|
||||
uint32_t post_done_int_clr:1;
|
||||
/** sha_release_int_clr : WT; bitpos: [3]; default: 0;
|
||||
* Set this bit to clear the ecdsa_sha_release_int interrupt
|
||||
*/
|
||||
uint32_t sha_release_int_clr:1;
|
||||
uint32_t reserved_4:28;
|
||||
};
|
||||
uint32_t val;
|
||||
} ecdsa_int_clr_reg_t;
|
||||
|
||||
|
||||
/** Group: Status registers */
|
||||
/** Type of state register
|
||||
* ECDSA status register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** busy : RO; bitpos: [1:0]; default: 0;
|
||||
* The status bits of ECDSA Accelerator. ECDSA is at 0: IDLE, 1: LOAD, 2: GET, 3: BUSY
|
||||
* state.
|
||||
*/
|
||||
uint32_t busy:2;
|
||||
uint32_t reserved_2:30;
|
||||
};
|
||||
uint32_t val;
|
||||
} ecdsa_state_reg_t;
|
||||
|
||||
|
||||
/** Group: Result registers */
|
||||
/** Type of result register
|
||||
* ECDSA result register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** operation_result : RO/SS; bitpos: [0]; default: 0;
|
||||
* The operation result bit of ECDSA Accelerator, only valid when ECDSA calculation is
|
||||
* done.
|
||||
*/
|
||||
uint32_t operation_result:1;
|
||||
uint32_t reserved_1:31;
|
||||
};
|
||||
uint32_t val;
|
||||
} ecdsa_result_reg_t;
|
||||
|
||||
|
||||
/** Group: Status Register */
|
||||
/** Type of free register
|
||||
* ECDSA free state
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** free : R/W; bitpos: [0]; default: 1;
|
||||
* Represents if ECDSA Accelerator is free or not.
|
||||
* 0: non-free
|
||||
* 1: free
|
||||
*/
|
||||
uint32_t free:1;
|
||||
uint32_t reserved_1:31;
|
||||
};
|
||||
uint32_t val;
|
||||
} ecdsa_free_reg_t;
|
||||
|
||||
|
||||
/** Group: Key Registers */
|
||||
/** Type of key_0 register
|
||||
* ECDSA key data register 0
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** key_0 : R/W; bitpos: [31:0]; default: 0;
|
||||
* These bits stores key_0 that is a part of key material.
|
||||
*/
|
||||
uint32_t key_0:32;
|
||||
};
|
||||
uint32_t val;
|
||||
} ecdsa_key_0_reg_t;
|
||||
|
||||
/** Type of key_1 register
|
||||
* ECDSA key data register 1
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** key_1 : R/W; bitpos: [31:0]; default: 0;
|
||||
* These bits stores key_1 that is a part of key material.
|
||||
*/
|
||||
uint32_t key_1:32;
|
||||
};
|
||||
uint32_t val;
|
||||
} ecdsa_key_1_reg_t;
|
||||
|
||||
/** Type of key_2 register
|
||||
* ECDSA key data register 2
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** key_2 : R/W; bitpos: [31:0]; default: 0;
|
||||
* These bits stores key_2 that is a part of key material.
|
||||
*/
|
||||
uint32_t key_2:32;
|
||||
};
|
||||
uint32_t val;
|
||||
} ecdsa_key_2_reg_t;
|
||||
|
||||
/** Type of key_3 register
|
||||
* ECDSA key data register 3
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** key_3 : R/W; bitpos: [31:0]; default: 0;
|
||||
* These bits stores key_3 that is a part of key material.
|
||||
*/
|
||||
uint32_t key_3:32;
|
||||
};
|
||||
uint32_t val;
|
||||
} ecdsa_key_3_reg_t;
|
||||
|
||||
/** Type of key_4 register
|
||||
* ECDSA key data register 4
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** key_4 : R/W; bitpos: [31:0]; default: 0;
|
||||
* These bits stores key_4 that is a part of key material.
|
||||
*/
|
||||
uint32_t key_4:32;
|
||||
};
|
||||
uint32_t val;
|
||||
} ecdsa_key_4_reg_t;
|
||||
|
||||
/** Type of key_5 register
|
||||
* ECDSA key data register 5
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** key_5 : R/W; bitpos: [31:0]; default: 0;
|
||||
* These bits stores key_5 that is a part of key material.
|
||||
*/
|
||||
uint32_t key_5:32;
|
||||
};
|
||||
uint32_t val;
|
||||
} ecdsa_key_5_reg_t;
|
||||
|
||||
/** Type of key_6 register
|
||||
* ECDSA key data register 6
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** key_6 : R/W; bitpos: [31:0]; default: 0;
|
||||
* These bits stores key_6 that is a part of key material.
|
||||
*/
|
||||
uint32_t key_6:32;
|
||||
};
|
||||
uint32_t val;
|
||||
} ecdsa_key_6_reg_t;
|
||||
|
||||
/** Type of key_7 register
|
||||
* ECDSA key data register 7
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** key_7 : R/W; bitpos: [31:0]; default: 0;
|
||||
* These bits stores key_7 that is a part of key material.
|
||||
*/
|
||||
uint32_t key_7:32;
|
||||
};
|
||||
uint32_t val;
|
||||
} ecdsa_key_7_reg_t;
|
||||
|
||||
/** Type of key_8 register
|
||||
* ECDSA key data register 8
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** key_8 : R/W; bitpos: [31:0]; default: 0;
|
||||
* These bits stores key_8 that is a part of key material.
|
||||
*/
|
||||
uint32_t key_8:32;
|
||||
};
|
||||
uint32_t val;
|
||||
} ecdsa_key_8_reg_t;
|
||||
|
||||
/** Type of key_9 register
|
||||
* ECDSA key data register 9
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** key_9 : R/W; bitpos: [31:0]; default: 0;
|
||||
* These bits stores key_9 that is a part of key material.
|
||||
*/
|
||||
uint32_t key_9:32;
|
||||
};
|
||||
uint32_t val;
|
||||
} ecdsa_key_9_reg_t;
|
||||
|
||||
/** Type of key_10 register
|
||||
* ECDSA key data register 10
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** key_10 : R/W; bitpos: [31:0]; default: 0;
|
||||
* These bits stores key_10 that is a part of key material.
|
||||
*/
|
||||
uint32_t key_10:32;
|
||||
};
|
||||
uint32_t val;
|
||||
} ecdsa_key_10_reg_t;
|
||||
|
||||
/** Type of key_11 register
|
||||
* ECDSA key data register 11
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** key_11 : R/W; bitpos: [31:0]; default: 0;
|
||||
* These bits stores key_11 that is a part of key material.
|
||||
*/
|
||||
uint32_t key_11:32;
|
||||
};
|
||||
uint32_t val;
|
||||
} ecdsa_key_11_reg_t;
|
||||
|
||||
|
||||
/** Group: SHA register */
|
||||
/** Type of sha_mode register
|
||||
* ECDSA control SHA register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** sha_mode : R/W; bitpos: [3:0]; default: 0;
|
||||
* The work mode bits of SHA Calculator in ECDSA Accelerator. 0: SHA1. 1: SHA-224. 2:
|
||||
* SHA-256. 3: SHA-384 4: SHA-512. 5: SHA-512224. 6: SHA-512256. 14:SM3. Others:
|
||||
* invalid.
|
||||
*/
|
||||
uint32_t sha_mode:4;
|
||||
uint32_t reserved_4:28;
|
||||
};
|
||||
uint32_t val;
|
||||
} ecdsa_sha_mode_reg_t;
|
||||
|
||||
/** Type of sha_start register
|
||||
* ECDSA control SHA register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** sha_start : WT; bitpos: [0]; default: 0;
|
||||
* Write 1 to start the first calculation of SHA Calculator in ECDSA Accelerator. This
|
||||
* bit will be self-cleared after configuration.
|
||||
*/
|
||||
uint32_t sha_start:1;
|
||||
uint32_t reserved_1:31;
|
||||
};
|
||||
uint32_t val;
|
||||
} ecdsa_sha_start_reg_t;
|
||||
|
||||
/** Type of sha_continue register
|
||||
* ECDSA control SHA register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** sha_continue : WT; bitpos: [0]; default: 0;
|
||||
* Write 1 to start the latter calculation of SHA Calculator in ECDSA Accelerator. This
|
||||
* bit will be self-cleared after configuration.
|
||||
*/
|
||||
uint32_t sha_continue:1;
|
||||
uint32_t reserved_1:31;
|
||||
};
|
||||
uint32_t val;
|
||||
} ecdsa_sha_continue_reg_t;
|
||||
|
||||
/** Type of sha_busy register
|
||||
* ECDSA status register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** sha_busy : RO; bitpos: [0]; default: 0;
|
||||
* The busy status bit of SHA Calculator in ECDSA Accelerator. 1:SHA is in
|
||||
* calculation. 0: SHA is idle.
|
||||
*/
|
||||
uint32_t sha_busy:1;
|
||||
uint32_t reserved_1:31;
|
||||
};
|
||||
uint32_t val;
|
||||
} ecdsa_sha_busy_reg_t;
|
||||
|
||||
|
||||
/** Group: Version register */
|
||||
/** Type of date register
|
||||
* Version control register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** date : R/W; bitpos: [27:0]; default: 38830480;
|
||||
* ECDSA version control register
|
||||
*/
|
||||
uint32_t date:28;
|
||||
uint32_t reserved_28:4;
|
||||
};
|
||||
uint32_t val;
|
||||
} ecdsa_date_reg_t;
|
||||
|
||||
|
||||
typedef struct {
|
||||
uint32_t reserved_000;
|
||||
volatile ecdsa_conf_reg_t conf;
|
||||
volatile ecdsa_clk_reg_t clk;
|
||||
volatile ecdsa_int_raw_reg_t int_raw;
|
||||
volatile ecdsa_int_st_reg_t int_st;
|
||||
volatile ecdsa_int_ena_reg_t int_ena;
|
||||
volatile ecdsa_int_clr_reg_t int_clr;
|
||||
volatile ecdsa_start_reg_t start;
|
||||
volatile ecdsa_state_reg_t state;
|
||||
volatile ecdsa_result_reg_t result;
|
||||
volatile ecdsa_timeout_limit_reg_t timeout_limit;
|
||||
volatile ecdsa_free_reg_t free;
|
||||
uint32_t reserved_030[4];
|
||||
volatile ecdsa_key_0_reg_t key_0;
|
||||
volatile ecdsa_key_1_reg_t key_1;
|
||||
volatile ecdsa_key_2_reg_t key_2;
|
||||
volatile ecdsa_key_3_reg_t key_3;
|
||||
volatile ecdsa_key_4_reg_t key_4;
|
||||
volatile ecdsa_key_5_reg_t key_5;
|
||||
volatile ecdsa_key_6_reg_t key_6;
|
||||
volatile ecdsa_key_7_reg_t key_7;
|
||||
volatile ecdsa_key_8_reg_t key_8;
|
||||
volatile ecdsa_key_9_reg_t key_9;
|
||||
volatile ecdsa_key_10_reg_t key_10;
|
||||
volatile ecdsa_key_11_reg_t key_11;
|
||||
uint32_t reserved_070[35];
|
||||
volatile ecdsa_date_reg_t date;
|
||||
uint32_t reserved_100[64];
|
||||
volatile ecdsa_sha_mode_reg_t sha_mode;
|
||||
uint32_t reserved_204[3];
|
||||
volatile ecdsa_sha_start_reg_t sha_start;
|
||||
volatile ecdsa_sha_continue_reg_t sha_continue;
|
||||
volatile ecdsa_sha_busy_reg_t sha_busy;
|
||||
uint32_t reserved_21c[25];
|
||||
volatile uint32_t message[16];
|
||||
uint32_t reserved_2c0[72];
|
||||
volatile uint32_t r[12];
|
||||
volatile uint32_t s[12];
|
||||
volatile uint32_t z[12];
|
||||
volatile uint32_t qax[12];
|
||||
volatile uint32_t qay[12];
|
||||
} ecdsa_dev_t;
|
||||
|
||||
|
||||
#ifndef __cplusplus
|
||||
_Static_assert(sizeof(ecdsa_dev_t) == 0x4d0, "Invalid size of ecdsa_dev_t structure");
|
||||
#endif
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
2800
components/soc/esp32s31/register/soc/efuse_reg.h
Normal file
2800
components/soc/esp32s31/register/soc/efuse_reg.h
Normal file
File diff suppressed because it is too large
Load Diff
1791
components/soc/esp32s31/register/soc/efuse_struct.h
Normal file
1791
components/soc/esp32s31/register/soc/efuse_struct.h
Normal file
File diff suppressed because it is too large
Load Diff
7239
components/soc/esp32s31/register/soc/gmac_reg.h
Normal file
7239
components/soc/esp32s31/register/soc/gmac_reg.h
Normal file
File diff suppressed because it is too large
Load Diff
6258
components/soc/esp32s31/register/soc/gmac_struct.h
Normal file
6258
components/soc/esp32s31/register/soc/gmac_struct.h
Normal file
File diff suppressed because it is too large
Load Diff
2104
components/soc/esp32s31/register/soc/gpio_ext_reg.h
Normal file
2104
components/soc/esp32s31/register/soc/gpio_ext_reg.h
Normal file
File diff suppressed because it is too large
Load Diff
1243
components/soc/esp32s31/register/soc/gpio_ext_struct.h
Normal file
1243
components/soc/esp32s31/register/soc/gpio_ext_struct.h
Normal file
File diff suppressed because it is too large
Load Diff
19042
components/soc/esp32s31/register/soc/gpio_reg.h
Normal file
19042
components/soc/esp32s31/register/soc/gpio_reg.h
Normal file
File diff suppressed because it is too large
Load Diff
1129
components/soc/esp32s31/register/soc/gpio_struct.h
Normal file
1129
components/soc/esp32s31/register/soc/gpio_struct.h
Normal file
File diff suppressed because it is too large
Load Diff
294
components/soc/esp32s31/register/soc/hmac_reg.h
Normal file
294
components/soc/esp32s31/register/soc/hmac_reg.h
Normal file
@@ -0,0 +1,294 @@
|
||||
/**
|
||||
* SPDX-FileCopyrightText: 2025 Espressif Systems (Shanghai) CO LTD
|
||||
*
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
*/
|
||||
#pragma once
|
||||
|
||||
#include <stdint.h>
|
||||
#include "soc/soc.h"
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
/** HMAC_SET_START_REG register
|
||||
* HMAC start control register
|
||||
*/
|
||||
#define HMAC_SET_START_REG (DR_REG_HMAC_BASE + 0x40)
|
||||
/** HMAC_SET_START : WS; bitpos: [0]; default: 0;
|
||||
* Configures whether or not to enable HMAC.
|
||||
*
|
||||
* 0: Disable HMAC
|
||||
*
|
||||
* 1: Enable HMAC
|
||||
*/
|
||||
#define HMAC_SET_START (BIT(0))
|
||||
#define HMAC_SET_START_M (HMAC_SET_START_V << HMAC_SET_START_S)
|
||||
#define HMAC_SET_START_V 0x00000001U
|
||||
#define HMAC_SET_START_S 0
|
||||
|
||||
/** HMAC_SET_PARA_PURPOSE_REG register
|
||||
* HMAC parameter configuration register
|
||||
*/
|
||||
#define HMAC_SET_PARA_PURPOSE_REG (DR_REG_HMAC_BASE + 0x44)
|
||||
/** HMAC_PURPOSE_SET : WO; bitpos: [3:0]; default: 0;
|
||||
* Configures the HMAC purpose, refer to the Table . "
|
||||
*/
|
||||
#define HMAC_PURPOSE_SET 0x0000000FU
|
||||
#define HMAC_PURPOSE_SET_M (HMAC_PURPOSE_SET_V << HMAC_PURPOSE_SET_S)
|
||||
#define HMAC_PURPOSE_SET_V 0x0000000FU
|
||||
#define HMAC_PURPOSE_SET_S 0
|
||||
|
||||
/** HMAC_SET_PARA_KEY_REG register
|
||||
* HMAC parameters configuration register
|
||||
*/
|
||||
#define HMAC_SET_PARA_KEY_REG (DR_REG_HMAC_BASE + 0x48)
|
||||
/** HMAC_KEY_SET : WO; bitpos: [2:0]; default: 0;
|
||||
* Configures HMAC key. There are six keys with index 0~5. Write the index of the
|
||||
* selected key to this field.
|
||||
*/
|
||||
#define HMAC_KEY_SET 0x00000007U
|
||||
#define HMAC_KEY_SET_M (HMAC_KEY_SET_V << HMAC_KEY_SET_S)
|
||||
#define HMAC_KEY_SET_V 0x00000007U
|
||||
#define HMAC_KEY_SET_S 0
|
||||
|
||||
/** HMAC_SET_PARA_FINISH_REG register
|
||||
* HMAC configuration completion register
|
||||
*/
|
||||
#define HMAC_SET_PARA_FINISH_REG (DR_REG_HMAC_BASE + 0x4c)
|
||||
/** HMAC_SET_PARA_END : WS; bitpos: [0]; default: 0;
|
||||
* Configures whether to finish HMAC configuration.
|
||||
*
|
||||
* 0: No effect
|
||||
*
|
||||
* 1: Finish configuration
|
||||
*/
|
||||
#define HMAC_SET_PARA_END (BIT(0))
|
||||
#define HMAC_SET_PARA_END_M (HMAC_SET_PARA_END_V << HMAC_SET_PARA_END_S)
|
||||
#define HMAC_SET_PARA_END_V 0x00000001U
|
||||
#define HMAC_SET_PARA_END_S 0
|
||||
|
||||
/** HMAC_SET_MESSAGE_ONE_REG register
|
||||
* HMAC message control register
|
||||
*/
|
||||
#define HMAC_SET_MESSAGE_ONE_REG (DR_REG_HMAC_BASE + 0x50)
|
||||
/** HMAC_SET_TEXT_ONE : WS; bitpos: [0]; default: 0;
|
||||
* Calls SHA to calculate one message block.
|
||||
*/
|
||||
#define HMAC_SET_TEXT_ONE (BIT(0))
|
||||
#define HMAC_SET_TEXT_ONE_M (HMAC_SET_TEXT_ONE_V << HMAC_SET_TEXT_ONE_S)
|
||||
#define HMAC_SET_TEXT_ONE_V 0x00000001U
|
||||
#define HMAC_SET_TEXT_ONE_S 0
|
||||
|
||||
/** HMAC_SET_MESSAGE_ING_REG register
|
||||
* HMAC message continue register
|
||||
*/
|
||||
#define HMAC_SET_MESSAGE_ING_REG (DR_REG_HMAC_BASE + 0x54)
|
||||
/** HMAC_SET_TEXT_ING : WS; bitpos: [0]; default: 0;
|
||||
* Configures whether or not there are unprocessed message blocks.
|
||||
*
|
||||
* 0: No unprocessed message block
|
||||
*
|
||||
* 1: There are still some message blocks to be processed.
|
||||
*/
|
||||
#define HMAC_SET_TEXT_ING (BIT(0))
|
||||
#define HMAC_SET_TEXT_ING_M (HMAC_SET_TEXT_ING_V << HMAC_SET_TEXT_ING_S)
|
||||
#define HMAC_SET_TEXT_ING_V 0x00000001U
|
||||
#define HMAC_SET_TEXT_ING_S 0
|
||||
|
||||
/** HMAC_SET_MESSAGE_END_REG register
|
||||
* HMAC message end register
|
||||
*/
|
||||
#define HMAC_SET_MESSAGE_END_REG (DR_REG_HMAC_BASE + 0x58)
|
||||
/** HMAC_SET_TEXT_END : WS; bitpos: [0]; default: 0;
|
||||
* Configures whether to start hardware padding.
|
||||
*
|
||||
* 0: No effect
|
||||
*
|
||||
* 1: Start hardware padding
|
||||
*/
|
||||
#define HMAC_SET_TEXT_END (BIT(0))
|
||||
#define HMAC_SET_TEXT_END_M (HMAC_SET_TEXT_END_V << HMAC_SET_TEXT_END_S)
|
||||
#define HMAC_SET_TEXT_END_V 0x00000001U
|
||||
#define HMAC_SET_TEXT_END_S 0
|
||||
|
||||
/** HMAC_SET_RESULT_FINISH_REG register
|
||||
* HMAC result reading finish register
|
||||
*/
|
||||
#define HMAC_SET_RESULT_FINISH_REG (DR_REG_HMAC_BASE + 0x5c)
|
||||
/** HMAC_SET_RESULT_END : WS; bitpos: [0]; default: 0;
|
||||
* Configures whether to exit upstream mode and clear calculation results.
|
||||
*
|
||||
* 0: Not exit
|
||||
*
|
||||
* 1: Exit upstream mode and clear calculation results.
|
||||
*/
|
||||
#define HMAC_SET_RESULT_END (BIT(0))
|
||||
#define HMAC_SET_RESULT_END_M (HMAC_SET_RESULT_END_V << HMAC_SET_RESULT_END_S)
|
||||
#define HMAC_SET_RESULT_END_V 0x00000001U
|
||||
#define HMAC_SET_RESULT_END_S 0
|
||||
|
||||
/** HMAC_SET_INVALIDATE_JTAG_REG register
|
||||
* Invalidate JTAG result register
|
||||
*/
|
||||
#define HMAC_SET_INVALIDATE_JTAG_REG (DR_REG_HMAC_BASE + 0x60)
|
||||
/** HMAC_SET_INVALIDATE_JTAG : WS; bitpos: [0]; default: 0;
|
||||
* Configures whether or not to clear calculation results when re-enabling JTAG in
|
||||
* downstream mode.
|
||||
*
|
||||
* 0: Not clear
|
||||
*
|
||||
* 1: Clear calculation results
|
||||
*/
|
||||
#define HMAC_SET_INVALIDATE_JTAG (BIT(0))
|
||||
#define HMAC_SET_INVALIDATE_JTAG_M (HMAC_SET_INVALIDATE_JTAG_V << HMAC_SET_INVALIDATE_JTAG_S)
|
||||
#define HMAC_SET_INVALIDATE_JTAG_V 0x00000001U
|
||||
#define HMAC_SET_INVALIDATE_JTAG_S 0
|
||||
|
||||
/** HMAC_SET_INVALIDATE_DS_REG register
|
||||
* Invalidate digital signature result register
|
||||
*/
|
||||
#define HMAC_SET_INVALIDATE_DS_REG (DR_REG_HMAC_BASE + 0x64)
|
||||
/** HMAC_SET_INVALIDATE_DS : WS; bitpos: [0]; default: 0;
|
||||
* Configures whether or not to clear calculation results of the DS module in
|
||||
* downstream mode.
|
||||
*
|
||||
* 0: Not clear
|
||||
*
|
||||
* 1: Clear calculation results
|
||||
*/
|
||||
#define HMAC_SET_INVALIDATE_DS (BIT(0))
|
||||
#define HMAC_SET_INVALIDATE_DS_M (HMAC_SET_INVALIDATE_DS_V << HMAC_SET_INVALIDATE_DS_S)
|
||||
#define HMAC_SET_INVALIDATE_DS_V 0x00000001U
|
||||
#define HMAC_SET_INVALIDATE_DS_S 0
|
||||
|
||||
/** HMAC_QUERY_ERROR_REG register
|
||||
* Stores matching results between keys generated by users and corresponding purposes
|
||||
*/
|
||||
#define HMAC_QUERY_ERROR_REG (DR_REG_HMAC_BASE + 0x68)
|
||||
/** HMAC_QUREY_CHECK : RO; bitpos: [0]; default: 0;
|
||||
* Represents whether or not an HMAC key matches the purpose.
|
||||
*
|
||||
* 0: Match
|
||||
*
|
||||
* 1: Error
|
||||
*/
|
||||
#define HMAC_QUREY_CHECK (BIT(0))
|
||||
#define HMAC_QUREY_CHECK_M (HMAC_QUREY_CHECK_V << HMAC_QUREY_CHECK_S)
|
||||
#define HMAC_QUREY_CHECK_V 0x00000001U
|
||||
#define HMAC_QUREY_CHECK_S 0
|
||||
|
||||
/** HMAC_QUERY_BUSY_REG register
|
||||
* Busy state of HMAC module
|
||||
*/
|
||||
#define HMAC_QUERY_BUSY_REG (DR_REG_HMAC_BASE + 0x6c)
|
||||
/** HMAC_BUSY_STATE : RO; bitpos: [0]; default: 0;
|
||||
* Represents whether or not HMAC is in a busy state. Before configuring HMAC, please
|
||||
* make sure HMAC is in an IDLE state.
|
||||
*
|
||||
* 0: Idle
|
||||
*
|
||||
* 1: HMAC is still working on the calculation
|
||||
*/
|
||||
#define HMAC_BUSY_STATE (BIT(0))
|
||||
#define HMAC_BUSY_STATE_M (HMAC_BUSY_STATE_V << HMAC_BUSY_STATE_S)
|
||||
#define HMAC_BUSY_STATE_V 0x00000001U
|
||||
#define HMAC_BUSY_STATE_S 0
|
||||
|
||||
/** HMAC_TIMEOUT_LIMIT_REG register
|
||||
* HMAC timeout limit configure register
|
||||
*/
|
||||
#define HMAC_TIMEOUT_LIMIT_REG (DR_REG_HMAC_BASE + 0x70)
|
||||
/** HMAC_TIMEOUT_LIMIT : R/W; bitpos: [31:0]; default: 4294967295;
|
||||
* The timeout limitation for waiting sub-IP.
|
||||
*/
|
||||
#define HMAC_TIMEOUT_LIMIT 0xFFFFFFFFU
|
||||
#define HMAC_TIMEOUT_LIMIT_M (HMAC_TIMEOUT_LIMIT_V << HMAC_TIMEOUT_LIMIT_S)
|
||||
#define HMAC_TIMEOUT_LIMIT_V 0xFFFFFFFFU
|
||||
#define HMAC_TIMEOUT_LIMIT_S 0
|
||||
|
||||
/** HMAC_WR_MESSAGE_MEM register
|
||||
* Message block memory.
|
||||
*/
|
||||
#define HMAC_WR_MESSAGE_MEM (DR_REG_HMAC_BASE + 0x80)
|
||||
#define HMAC_WR_MESSAGE_MEM_SIZE_BYTES 64
|
||||
|
||||
/** HMAC_RD_RESULT_MEM register
|
||||
* Result from upstream.
|
||||
*/
|
||||
#define HMAC_RD_RESULT_MEM (DR_REG_HMAC_BASE + 0xc0)
|
||||
#define HMAC_RD_RESULT_MEM_SIZE_BYTES 32
|
||||
|
||||
/** HMAC_SET_MESSAGE_PAD_REG register
|
||||
* Software padding register
|
||||
*/
|
||||
#define HMAC_SET_MESSAGE_PAD_REG (DR_REG_HMAC_BASE + 0xf0)
|
||||
/** HMAC_SET_TEXT_PAD : WO; bitpos: [0]; default: 0;
|
||||
* Configures whether or not the padding is applied by software.
|
||||
*
|
||||
* 0: Not applied by software
|
||||
*
|
||||
* 1: Applied by software
|
||||
*/
|
||||
#define HMAC_SET_TEXT_PAD (BIT(0))
|
||||
#define HMAC_SET_TEXT_PAD_M (HMAC_SET_TEXT_PAD_V << HMAC_SET_TEXT_PAD_S)
|
||||
#define HMAC_SET_TEXT_PAD_V 0x00000001U
|
||||
#define HMAC_SET_TEXT_PAD_S 0
|
||||
|
||||
/** HMAC_ONE_BLOCK_REG register
|
||||
* One block message register
|
||||
*/
|
||||
#define HMAC_ONE_BLOCK_REG (DR_REG_HMAC_BASE + 0xf4)
|
||||
/** HMAC_SET_ONE_BLOCK : WS; bitpos: [0]; default: 0;
|
||||
* Write 1 to indicate there is only one block which already contains padding bits and
|
||||
* there is no need for padding.
|
||||
*/
|
||||
#define HMAC_SET_ONE_BLOCK (BIT(0))
|
||||
#define HMAC_SET_ONE_BLOCK_M (HMAC_SET_ONE_BLOCK_V << HMAC_SET_ONE_BLOCK_S)
|
||||
#define HMAC_SET_ONE_BLOCK_V 0x00000001U
|
||||
#define HMAC_SET_ONE_BLOCK_S 0
|
||||
|
||||
/** HMAC_SOFT_JTAG_CTRL_REG register
|
||||
* Jtag register 0.
|
||||
*/
|
||||
#define HMAC_SOFT_JTAG_CTRL_REG (DR_REG_HMAC_BASE + 0xf8)
|
||||
/** HMAC_SOFT_JTAG_CTRL : WS; bitpos: [0]; default: 0;
|
||||
* Configures whether or not to enable JTAG authentication mode.
|
||||
*
|
||||
* 0: Disable
|
||||
*
|
||||
* 1: Enable
|
||||
*
|
||||
*/
|
||||
#define HMAC_SOFT_JTAG_CTRL (BIT(0))
|
||||
#define HMAC_SOFT_JTAG_CTRL_M (HMAC_SOFT_JTAG_CTRL_V << HMAC_SOFT_JTAG_CTRL_S)
|
||||
#define HMAC_SOFT_JTAG_CTRL_V 0x00000001U
|
||||
#define HMAC_SOFT_JTAG_CTRL_S 0
|
||||
|
||||
/** HMAC_WR_JTAG_REG register
|
||||
* Re-enable JTAG register 1
|
||||
*/
|
||||
#define HMAC_WR_JTAG_REG (DR_REG_HMAC_BASE + 0xfc)
|
||||
/** HMAC_WR_JTAG : WO; bitpos: [31:0]; default: 0;
|
||||
* Writes the comparing input used for re-enabling JTAG.
|
||||
*/
|
||||
#define HMAC_WR_JTAG 0xFFFFFFFFU
|
||||
#define HMAC_WR_JTAG_M (HMAC_WR_JTAG_V << HMAC_WR_JTAG_S)
|
||||
#define HMAC_WR_JTAG_V 0xFFFFFFFFU
|
||||
#define HMAC_WR_JTAG_S 0
|
||||
|
||||
/** HMAC_DATE_REG register
|
||||
* Version control register
|
||||
*/
|
||||
#define HMAC_DATE_REG (DR_REG_HMAC_BASE + 0x1fc)
|
||||
/** HMAC_DATE : R/W; bitpos: [29:0]; default: 539297817;
|
||||
* Hmac date information/ hmac version information.
|
||||
*/
|
||||
#define HMAC_DATE 0x3FFFFFFFU
|
||||
#define HMAC_DATE_M (HMAC_DATE_V << HMAC_DATE_S)
|
||||
#define HMAC_DATE_V 0x3FFFFFFFU
|
||||
#define HMAC_DATE_S 0
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
359
components/soc/esp32s31/register/soc/hmac_struct.h
Normal file
359
components/soc/esp32s31/register/soc/hmac_struct.h
Normal file
@@ -0,0 +1,359 @@
|
||||
/**
|
||||
* SPDX-FileCopyrightText: 2025 Espressif Systems (Shanghai) CO LTD
|
||||
*
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
*/
|
||||
#pragma once
|
||||
|
||||
#include <stdint.h>
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
/** Group: Control/Status Registers */
|
||||
/** Type of set_start register
|
||||
* HMAC start control register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** set_start : WS; bitpos: [0]; default: 0;
|
||||
* Configures whether or not to enable HMAC.
|
||||
*
|
||||
* 0: Disable HMAC
|
||||
*
|
||||
* 1: Enable HMAC
|
||||
*/
|
||||
uint32_t set_start:1;
|
||||
uint32_t reserved_1:31;
|
||||
};
|
||||
uint32_t val;
|
||||
} hmac_set_start_reg_t;
|
||||
|
||||
/** Type of set_para_finish register
|
||||
* HMAC configuration completion register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** set_para_end : WS; bitpos: [0]; default: 0;
|
||||
* Configures whether to finish HMAC configuration.
|
||||
*
|
||||
* 0: No effect
|
||||
*
|
||||
* 1: Finish configuration
|
||||
*/
|
||||
uint32_t set_para_end:1;
|
||||
uint32_t reserved_1:31;
|
||||
};
|
||||
uint32_t val;
|
||||
} hmac_set_para_finish_reg_t;
|
||||
|
||||
/** Type of set_message_one register
|
||||
* HMAC message control register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** set_text_one : WS; bitpos: [0]; default: 0;
|
||||
* Calls SHA to calculate one message block.
|
||||
*/
|
||||
uint32_t set_text_one:1;
|
||||
uint32_t reserved_1:31;
|
||||
};
|
||||
uint32_t val;
|
||||
} hmac_set_message_one_reg_t;
|
||||
|
||||
/** Type of set_message_ing register
|
||||
* HMAC message continue register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** set_text_ing : WS; bitpos: [0]; default: 0;
|
||||
* Configures whether or not there are unprocessed message blocks.
|
||||
*
|
||||
* 0: No unprocessed message block
|
||||
*
|
||||
* 1: There are still some message blocks to be processed.
|
||||
*/
|
||||
uint32_t set_text_ing:1;
|
||||
uint32_t reserved_1:31;
|
||||
};
|
||||
uint32_t val;
|
||||
} hmac_set_message_ing_reg_t;
|
||||
|
||||
/** Type of set_message_end register
|
||||
* HMAC message end register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** set_text_end : WS; bitpos: [0]; default: 0;
|
||||
* Configures whether to start hardware padding.
|
||||
*
|
||||
* 0: No effect
|
||||
*
|
||||
* 1: Start hardware padding
|
||||
*/
|
||||
uint32_t set_text_end:1;
|
||||
uint32_t reserved_1:31;
|
||||
};
|
||||
uint32_t val;
|
||||
} hmac_set_message_end_reg_t;
|
||||
|
||||
/** Type of set_result_finish register
|
||||
* HMAC result reading finish register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** set_result_end : WS; bitpos: [0]; default: 0;
|
||||
* Configures whether to exit upstream mode and clear calculation results.
|
||||
*
|
||||
* 0: Not exit
|
||||
*
|
||||
* 1: Exit upstream mode and clear calculation results.
|
||||
*/
|
||||
uint32_t set_result_end:1;
|
||||
uint32_t reserved_1:31;
|
||||
};
|
||||
uint32_t val;
|
||||
} hmac_set_result_finish_reg_t;
|
||||
|
||||
/** Type of set_invalidate_jtag register
|
||||
* Invalidate JTAG result register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** set_invalidate_jtag : WS; bitpos: [0]; default: 0;
|
||||
* Configures whether or not to clear calculation results when re-enabling JTAG in
|
||||
* downstream mode.
|
||||
*
|
||||
* 0: Not clear
|
||||
*
|
||||
* 1: Clear calculation results
|
||||
*/
|
||||
uint32_t set_invalidate_jtag:1;
|
||||
uint32_t reserved_1:31;
|
||||
};
|
||||
uint32_t val;
|
||||
} hmac_set_invalidate_jtag_reg_t;
|
||||
|
||||
/** Type of set_invalidate_ds register
|
||||
* Invalidate digital signature result register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** set_invalidate_ds : WS; bitpos: [0]; default: 0;
|
||||
* Configures whether or not to clear calculation results of the DS module in
|
||||
* downstream mode.
|
||||
*
|
||||
* 0: Not clear
|
||||
*
|
||||
* 1: Clear calculation results
|
||||
*/
|
||||
uint32_t set_invalidate_ds:1;
|
||||
uint32_t reserved_1:31;
|
||||
};
|
||||
uint32_t val;
|
||||
} hmac_set_invalidate_ds_reg_t;
|
||||
|
||||
/** Type of query_error register
|
||||
* Stores matching results between keys generated by users and corresponding purposes
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** qurey_check : RO; bitpos: [0]; default: 0;
|
||||
* Represents whether or not an HMAC key matches the purpose.
|
||||
*
|
||||
* 0: Match
|
||||
*
|
||||
* 1: Error
|
||||
*/
|
||||
uint32_t qurey_check:1;
|
||||
uint32_t reserved_1:31;
|
||||
};
|
||||
uint32_t val;
|
||||
} hmac_query_error_reg_t;
|
||||
|
||||
/** Type of query_busy register
|
||||
* Busy state of HMAC module
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** busy_state : RO; bitpos: [0]; default: 0;
|
||||
* Represents whether or not HMAC is in a busy state. Before configuring HMAC, please
|
||||
* make sure HMAC is in an IDLE state.
|
||||
*
|
||||
* 0: Idle
|
||||
*
|
||||
* 1: HMAC is still working on the calculation
|
||||
*/
|
||||
uint32_t busy_state:1;
|
||||
uint32_t reserved_1:31;
|
||||
};
|
||||
uint32_t val;
|
||||
} hmac_query_busy_reg_t;
|
||||
|
||||
/** Type of set_message_pad register
|
||||
* Software padding register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** set_text_pad : WO; bitpos: [0]; default: 0;
|
||||
* Configures whether or not the padding is applied by software.
|
||||
*
|
||||
* 0: Not applied by software
|
||||
*
|
||||
* 1: Applied by software
|
||||
*/
|
||||
uint32_t set_text_pad:1;
|
||||
uint32_t reserved_1:31;
|
||||
};
|
||||
uint32_t val;
|
||||
} hmac_set_message_pad_reg_t;
|
||||
|
||||
/** Type of one_block register
|
||||
* One block message register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** set_one_block : WS; bitpos: [0]; default: 0;
|
||||
* Write 1 to indicate there is only one block which already contains padding bits and
|
||||
* there is no need for padding.
|
||||
*/
|
||||
uint32_t set_one_block:1;
|
||||
uint32_t reserved_1:31;
|
||||
};
|
||||
uint32_t val;
|
||||
} hmac_one_block_reg_t;
|
||||
|
||||
|
||||
/** Group: Configuration Registers */
|
||||
/** Type of set_para_purpose register
|
||||
* HMAC parameter configuration register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** purpose_set : WO; bitpos: [3:0]; default: 0;
|
||||
* Configures the HMAC purpose, refer to the Table . "
|
||||
*/
|
||||
uint32_t purpose_set:4;
|
||||
uint32_t reserved_4:28;
|
||||
};
|
||||
uint32_t val;
|
||||
} hmac_set_para_purpose_reg_t;
|
||||
|
||||
/** Type of set_para_key register
|
||||
* HMAC parameters configuration register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** key_set : WO; bitpos: [2:0]; default: 0;
|
||||
* Configures HMAC key. There are six keys with index 0~5. Write the index of the
|
||||
* selected key to this field.
|
||||
*/
|
||||
uint32_t key_set:3;
|
||||
uint32_t reserved_3:29;
|
||||
};
|
||||
uint32_t val;
|
||||
} hmac_set_para_key_reg_t;
|
||||
|
||||
/** Type of wr_jtag register
|
||||
* Re-enable JTAG register 1
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** wr_jtag : WO; bitpos: [31:0]; default: 0;
|
||||
* Writes the comparing input used for re-enabling JTAG.
|
||||
*/
|
||||
uint32_t wr_jtag:32;
|
||||
};
|
||||
uint32_t val;
|
||||
} hmac_wr_jtag_reg_t;
|
||||
|
||||
|
||||
/** Group: Configuration registers */
|
||||
/** Type of timeout_limit register
|
||||
* HMAC timeout limit configure register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** timeout_limit : R/W; bitpos: [31:0]; default: 4294967295;
|
||||
* The timeout limitation for waiting sub-IP.
|
||||
*/
|
||||
uint32_t timeout_limit:32;
|
||||
};
|
||||
uint32_t val;
|
||||
} hmac_timeout_limit_reg_t;
|
||||
|
||||
|
||||
/** Group: Memory Type */
|
||||
|
||||
/** Group: Configuration Register */
|
||||
/** Type of soft_jtag_ctrl register
|
||||
* Jtag register 0.
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** soft_jtag_ctrl : WS; bitpos: [0]; default: 0;
|
||||
* Configures whether or not to enable JTAG authentication mode.
|
||||
*
|
||||
* 0: Disable
|
||||
*
|
||||
* 1: Enable
|
||||
*
|
||||
*/
|
||||
uint32_t soft_jtag_ctrl:1;
|
||||
uint32_t reserved_1:31;
|
||||
};
|
||||
uint32_t val;
|
||||
} hmac_soft_jtag_ctrl_reg_t;
|
||||
|
||||
|
||||
/** Group: Version Register */
|
||||
/** Type of date register
|
||||
* Version control register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** date : R/W; bitpos: [29:0]; default: 539297817;
|
||||
* Hmac date information/ hmac version information.
|
||||
*/
|
||||
uint32_t date:30;
|
||||
uint32_t reserved_30:2;
|
||||
};
|
||||
uint32_t val;
|
||||
} hmac_date_reg_t;
|
||||
|
||||
|
||||
typedef struct {
|
||||
uint32_t reserved_000[16];
|
||||
volatile hmac_set_start_reg_t set_start;
|
||||
volatile hmac_set_para_purpose_reg_t set_para_purpose;
|
||||
volatile hmac_set_para_key_reg_t set_para_key;
|
||||
volatile hmac_set_para_finish_reg_t set_para_finish;
|
||||
volatile hmac_set_message_one_reg_t set_message_one;
|
||||
volatile hmac_set_message_ing_reg_t set_message_ing;
|
||||
volatile hmac_set_message_end_reg_t set_message_end;
|
||||
volatile hmac_set_result_finish_reg_t set_result_finish;
|
||||
volatile hmac_set_invalidate_jtag_reg_t set_invalidate_jtag;
|
||||
volatile hmac_set_invalidate_ds_reg_t set_invalidate_ds;
|
||||
volatile hmac_query_error_reg_t query_error;
|
||||
volatile hmac_query_busy_reg_t query_busy;
|
||||
volatile hmac_timeout_limit_reg_t timeout_limit;
|
||||
uint32_t reserved_074[3];
|
||||
volatile uint32_t wr_message[16];
|
||||
volatile uint32_t rd_result[8];
|
||||
uint32_t reserved_0e0[4];
|
||||
volatile hmac_set_message_pad_reg_t set_message_pad;
|
||||
volatile hmac_one_block_reg_t one_block;
|
||||
volatile hmac_soft_jtag_ctrl_reg_t soft_jtag_ctrl;
|
||||
volatile hmac_wr_jtag_reg_t wr_jtag;
|
||||
uint32_t reserved_100[63];
|
||||
volatile hmac_date_reg_t date;
|
||||
} hmac_dev_t;
|
||||
|
||||
|
||||
#ifndef __cplusplus
|
||||
_Static_assert(sizeof(hmac_dev_t) == 0x200, "Invalid size of hmac_dev_t structure");
|
||||
#endif
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
839
components/soc/esp32s31/register/soc/hp_alive_sys_reg.h
Normal file
839
components/soc/esp32s31/register/soc/hp_alive_sys_reg.h
Normal file
@@ -0,0 +1,839 @@
|
||||
/**
|
||||
* SPDX-FileCopyrightText: 2025 Espressif Systems (Shanghai) CO LTD
|
||||
*
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
*/
|
||||
#pragma once
|
||||
|
||||
#include <stdint.h>
|
||||
#include "soc/soc.h"
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
/** HP_ALIVE_SYS_HP_CLK_CTRL_REG register
|
||||
* HP Clock Control Register.
|
||||
*/
|
||||
#define HP_ALIVE_SYS_HP_CLK_CTRL_REG (DR_REG_HP_ALIVE_SYS_BASE + 0x0)
|
||||
/** HP_ALIVE_SYS_HP_XTALX2_80M_CLK_EN : R/W; bitpos: [17]; default: 1;
|
||||
* XTALx2 80M Clock Enable.
|
||||
*/
|
||||
#define HP_ALIVE_SYS_HP_XTALX2_80M_CLK_EN (BIT(17))
|
||||
#define HP_ALIVE_SYS_HP_XTALX2_80M_CLK_EN_M (HP_ALIVE_SYS_HP_XTALX2_80M_CLK_EN_V << HP_ALIVE_SYS_HP_XTALX2_80M_CLK_EN_S)
|
||||
#define HP_ALIVE_SYS_HP_XTALX2_80M_CLK_EN_V 0x00000001U
|
||||
#define HP_ALIVE_SYS_HP_XTALX2_80M_CLK_EN_S 17
|
||||
/** HP_ALIVE_SYS_HP_ROOT_CLK_EN : R/W; bitpos: [18]; default: 1;
|
||||
* HP SoC Root Clock Enable.
|
||||
*/
|
||||
#define HP_ALIVE_SYS_HP_ROOT_CLK_EN (BIT(18))
|
||||
#define HP_ALIVE_SYS_HP_ROOT_CLK_EN_M (HP_ALIVE_SYS_HP_ROOT_CLK_EN_V << HP_ALIVE_SYS_HP_ROOT_CLK_EN_S)
|
||||
#define HP_ALIVE_SYS_HP_ROOT_CLK_EN_V 0x00000001U
|
||||
#define HP_ALIVE_SYS_HP_ROOT_CLK_EN_S 18
|
||||
/** HP_ALIVE_SYS_HP_XTAL_32K_CLK_EN : R/W; bitpos: [19]; default: 1;
|
||||
* XTAL 32K Clock Enable.
|
||||
*/
|
||||
#define HP_ALIVE_SYS_HP_XTAL_32K_CLK_EN (BIT(19))
|
||||
#define HP_ALIVE_SYS_HP_XTAL_32K_CLK_EN_M (HP_ALIVE_SYS_HP_XTAL_32K_CLK_EN_V << HP_ALIVE_SYS_HP_XTAL_32K_CLK_EN_S)
|
||||
#define HP_ALIVE_SYS_HP_XTAL_32K_CLK_EN_V 0x00000001U
|
||||
#define HP_ALIVE_SYS_HP_XTAL_32K_CLK_EN_S 19
|
||||
/** HP_ALIVE_SYS_HP_RC_32K_CLK_EN : R/W; bitpos: [20]; default: 1;
|
||||
* RC 32K Clock Enable.
|
||||
*/
|
||||
#define HP_ALIVE_SYS_HP_RC_32K_CLK_EN (BIT(20))
|
||||
#define HP_ALIVE_SYS_HP_RC_32K_CLK_EN_M (HP_ALIVE_SYS_HP_RC_32K_CLK_EN_V << HP_ALIVE_SYS_HP_RC_32K_CLK_EN_S)
|
||||
#define HP_ALIVE_SYS_HP_RC_32K_CLK_EN_V 0x00000001U
|
||||
#define HP_ALIVE_SYS_HP_RC_32K_CLK_EN_S 20
|
||||
/** HP_ALIVE_SYS_HP_SOSC_150K_CLK_EN : R/W; bitpos: [21]; default: 1;
|
||||
* SOSC 150K Clock Enable.
|
||||
*/
|
||||
#define HP_ALIVE_SYS_HP_SOSC_150K_CLK_EN (BIT(21))
|
||||
#define HP_ALIVE_SYS_HP_SOSC_150K_CLK_EN_M (HP_ALIVE_SYS_HP_SOSC_150K_CLK_EN_V << HP_ALIVE_SYS_HP_SOSC_150K_CLK_EN_S)
|
||||
#define HP_ALIVE_SYS_HP_SOSC_150K_CLK_EN_V 0x00000001U
|
||||
#define HP_ALIVE_SYS_HP_SOSC_150K_CLK_EN_S 21
|
||||
/** HP_ALIVE_SYS_HP_PLL_80M_CLK_EN : R/W; bitpos: [22]; default: 1;
|
||||
* PLL 8M Clock Enable.
|
||||
*/
|
||||
#define HP_ALIVE_SYS_HP_PLL_80M_CLK_EN (BIT(22))
|
||||
#define HP_ALIVE_SYS_HP_PLL_80M_CLK_EN_M (HP_ALIVE_SYS_HP_PLL_80M_CLK_EN_V << HP_ALIVE_SYS_HP_PLL_80M_CLK_EN_S)
|
||||
#define HP_ALIVE_SYS_HP_PLL_80M_CLK_EN_V 0x00000001U
|
||||
#define HP_ALIVE_SYS_HP_PLL_80M_CLK_EN_S 22
|
||||
/** HP_ALIVE_SYS_HP_AUDIO_PLL_CLK_EN : R/W; bitpos: [23]; default: 1;
|
||||
* AUDIO PLL Clock Enable.
|
||||
*/
|
||||
#define HP_ALIVE_SYS_HP_AUDIO_PLL_CLK_EN (BIT(23))
|
||||
#define HP_ALIVE_SYS_HP_AUDIO_PLL_CLK_EN_M (HP_ALIVE_SYS_HP_AUDIO_PLL_CLK_EN_V << HP_ALIVE_SYS_HP_AUDIO_PLL_CLK_EN_S)
|
||||
#define HP_ALIVE_SYS_HP_AUDIO_PLL_CLK_EN_V 0x00000001U
|
||||
#define HP_ALIVE_SYS_HP_AUDIO_PLL_CLK_EN_S 23
|
||||
/** HP_ALIVE_SYS_HP_SDIO_PLL2_CLK_EN : R/W; bitpos: [24]; default: 1;
|
||||
* reserved
|
||||
*/
|
||||
#define HP_ALIVE_SYS_HP_SDIO_PLL2_CLK_EN (BIT(24))
|
||||
#define HP_ALIVE_SYS_HP_SDIO_PLL2_CLK_EN_M (HP_ALIVE_SYS_HP_SDIO_PLL2_CLK_EN_V << HP_ALIVE_SYS_HP_SDIO_PLL2_CLK_EN_S)
|
||||
#define HP_ALIVE_SYS_HP_SDIO_PLL2_CLK_EN_V 0x00000001U
|
||||
#define HP_ALIVE_SYS_HP_SDIO_PLL2_CLK_EN_S 24
|
||||
/** HP_ALIVE_SYS_HP_SDIO_PLL1_CLK_EN : R/W; bitpos: [25]; default: 1;
|
||||
* reserved
|
||||
*/
|
||||
#define HP_ALIVE_SYS_HP_SDIO_PLL1_CLK_EN (BIT(25))
|
||||
#define HP_ALIVE_SYS_HP_SDIO_PLL1_CLK_EN_M (HP_ALIVE_SYS_HP_SDIO_PLL1_CLK_EN_V << HP_ALIVE_SYS_HP_SDIO_PLL1_CLK_EN_S)
|
||||
#define HP_ALIVE_SYS_HP_SDIO_PLL1_CLK_EN_V 0x00000001U
|
||||
#define HP_ALIVE_SYS_HP_SDIO_PLL1_CLK_EN_S 25
|
||||
/** HP_ALIVE_SYS_HP_SDIO_PLL0_CLK_EN : R/W; bitpos: [26]; default: 1;
|
||||
* reserved
|
||||
*/
|
||||
#define HP_ALIVE_SYS_HP_SDIO_PLL0_CLK_EN (BIT(26))
|
||||
#define HP_ALIVE_SYS_HP_SDIO_PLL0_CLK_EN_M (HP_ALIVE_SYS_HP_SDIO_PLL0_CLK_EN_V << HP_ALIVE_SYS_HP_SDIO_PLL0_CLK_EN_S)
|
||||
#define HP_ALIVE_SYS_HP_SDIO_PLL0_CLK_EN_V 0x00000001U
|
||||
#define HP_ALIVE_SYS_HP_SDIO_PLL0_CLK_EN_S 26
|
||||
/** HP_ALIVE_SYS_HP_FOSC_20M_CLK_EN : R/W; bitpos: [27]; default: 1;
|
||||
* FOSC 20M Clock Enable.
|
||||
*/
|
||||
#define HP_ALIVE_SYS_HP_FOSC_20M_CLK_EN (BIT(27))
|
||||
#define HP_ALIVE_SYS_HP_FOSC_20M_CLK_EN_M (HP_ALIVE_SYS_HP_FOSC_20M_CLK_EN_V << HP_ALIVE_SYS_HP_FOSC_20M_CLK_EN_S)
|
||||
#define HP_ALIVE_SYS_HP_FOSC_20M_CLK_EN_V 0x00000001U
|
||||
#define HP_ALIVE_SYS_HP_FOSC_20M_CLK_EN_S 27
|
||||
/** HP_ALIVE_SYS_HP_XTAL_40M_CLK_EN : R/W; bitpos: [28]; default: 1;
|
||||
* XTAL 40M Clock Enable.
|
||||
*/
|
||||
#define HP_ALIVE_SYS_HP_XTAL_40M_CLK_EN (BIT(28))
|
||||
#define HP_ALIVE_SYS_HP_XTAL_40M_CLK_EN_M (HP_ALIVE_SYS_HP_XTAL_40M_CLK_EN_V << HP_ALIVE_SYS_HP_XTAL_40M_CLK_EN_S)
|
||||
#define HP_ALIVE_SYS_HP_XTAL_40M_CLK_EN_V 0x00000001U
|
||||
#define HP_ALIVE_SYS_HP_XTAL_40M_CLK_EN_S 28
|
||||
/** HP_ALIVE_SYS_HP_CPLL_300M_CLK_EN : R/W; bitpos: [29]; default: 1;
|
||||
* CPLL 300M Clock Enable.
|
||||
*/
|
||||
#define HP_ALIVE_SYS_HP_CPLL_300M_CLK_EN (BIT(29))
|
||||
#define HP_ALIVE_SYS_HP_CPLL_300M_CLK_EN_M (HP_ALIVE_SYS_HP_CPLL_300M_CLK_EN_V << HP_ALIVE_SYS_HP_CPLL_300M_CLK_EN_S)
|
||||
#define HP_ALIVE_SYS_HP_CPLL_300M_CLK_EN_V 0x00000001U
|
||||
#define HP_ALIVE_SYS_HP_CPLL_300M_CLK_EN_S 29
|
||||
/** HP_ALIVE_SYS_HP_SPLL_480M_CLK_EN : R/W; bitpos: [30]; default: 1;
|
||||
* SPLL 480M Clock Enable.
|
||||
*/
|
||||
#define HP_ALIVE_SYS_HP_SPLL_480M_CLK_EN (BIT(30))
|
||||
#define HP_ALIVE_SYS_HP_SPLL_480M_CLK_EN_M (HP_ALIVE_SYS_HP_SPLL_480M_CLK_EN_V << HP_ALIVE_SYS_HP_SPLL_480M_CLK_EN_S)
|
||||
#define HP_ALIVE_SYS_HP_SPLL_480M_CLK_EN_V 0x00000001U
|
||||
#define HP_ALIVE_SYS_HP_SPLL_480M_CLK_EN_S 30
|
||||
/** HP_ALIVE_SYS_HP_MPLL_500M_CLK_EN : R/W; bitpos: [31]; default: 1;
|
||||
* MPLL 500M Clock Enable.
|
||||
*/
|
||||
#define HP_ALIVE_SYS_HP_MPLL_500M_CLK_EN (BIT(31))
|
||||
#define HP_ALIVE_SYS_HP_MPLL_500M_CLK_EN_M (HP_ALIVE_SYS_HP_MPLL_500M_CLK_EN_V << HP_ALIVE_SYS_HP_MPLL_500M_CLK_EN_S)
|
||||
#define HP_ALIVE_SYS_HP_MPLL_500M_CLK_EN_V 0x00000001U
|
||||
#define HP_ALIVE_SYS_HP_MPLL_500M_CLK_EN_S 31
|
||||
|
||||
/** HP_ALIVE_SYS_HP_PAD_PARLIO_CTRL_REG register
|
||||
* HP Clock Control Register.
|
||||
*/
|
||||
#define HP_ALIVE_SYS_HP_PAD_PARLIO_CTRL_REG (DR_REG_HP_ALIVE_SYS_BASE + 0x4)
|
||||
/** HP_ALIVE_SYS_HP_PAD_PARLIO_TX_CLK_EN : R/W; bitpos: [30]; default: 1;
|
||||
* PARLIO TX Clock From Pad Enable.
|
||||
*/
|
||||
#define HP_ALIVE_SYS_HP_PAD_PARLIO_TX_CLK_EN (BIT(30))
|
||||
#define HP_ALIVE_SYS_HP_PAD_PARLIO_TX_CLK_EN_M (HP_ALIVE_SYS_HP_PAD_PARLIO_TX_CLK_EN_V << HP_ALIVE_SYS_HP_PAD_PARLIO_TX_CLK_EN_S)
|
||||
#define HP_ALIVE_SYS_HP_PAD_PARLIO_TX_CLK_EN_V 0x00000001U
|
||||
#define HP_ALIVE_SYS_HP_PAD_PARLIO_TX_CLK_EN_S 30
|
||||
/** HP_ALIVE_SYS_HP_PAD_PARLIO_RX_CLK_EN : R/W; bitpos: [31]; default: 1;
|
||||
* PARLIO RX Clock From Pad Enable.
|
||||
*/
|
||||
#define HP_ALIVE_SYS_HP_PAD_PARLIO_RX_CLK_EN (BIT(31))
|
||||
#define HP_ALIVE_SYS_HP_PAD_PARLIO_RX_CLK_EN_M (HP_ALIVE_SYS_HP_PAD_PARLIO_RX_CLK_EN_V << HP_ALIVE_SYS_HP_PAD_PARLIO_RX_CLK_EN_S)
|
||||
#define HP_ALIVE_SYS_HP_PAD_PARLIO_RX_CLK_EN_V 0x00000001U
|
||||
#define HP_ALIVE_SYS_HP_PAD_PARLIO_RX_CLK_EN_S 31
|
||||
|
||||
/** HP_ALIVE_SYS_HP_PAD_I2S0_CTRL_REG register
|
||||
* HP Clock Control Register.
|
||||
*/
|
||||
#define HP_ALIVE_SYS_HP_PAD_I2S0_CTRL_REG (DR_REG_HP_ALIVE_SYS_BASE + 0x8)
|
||||
/** HP_ALIVE_SYS_HP_PAD_I2S0_MCLK_EN : R/W; bitpos: [31]; default: 1;
|
||||
* I2S0 MCLK Clock From Pad Enable.
|
||||
*/
|
||||
#define HP_ALIVE_SYS_HP_PAD_I2S0_MCLK_EN (BIT(31))
|
||||
#define HP_ALIVE_SYS_HP_PAD_I2S0_MCLK_EN_M (HP_ALIVE_SYS_HP_PAD_I2S0_MCLK_EN_V << HP_ALIVE_SYS_HP_PAD_I2S0_MCLK_EN_S)
|
||||
#define HP_ALIVE_SYS_HP_PAD_I2S0_MCLK_EN_V 0x00000001U
|
||||
#define HP_ALIVE_SYS_HP_PAD_I2S0_MCLK_EN_S 31
|
||||
|
||||
/** HP_ALIVE_SYS_HP_PAD_I2S1_CTRL_REG register
|
||||
* HP Clock Control Register.
|
||||
*/
|
||||
#define HP_ALIVE_SYS_HP_PAD_I2S1_CTRL_REG (DR_REG_HP_ALIVE_SYS_BASE + 0xc)
|
||||
/** HP_ALIVE_SYS_HP_PAD_I2S1_MCLK_EN : R/W; bitpos: [31]; default: 1;
|
||||
* I2S1 MCLK Clock From Pad Enable.
|
||||
*/
|
||||
#define HP_ALIVE_SYS_HP_PAD_I2S1_MCLK_EN (BIT(31))
|
||||
#define HP_ALIVE_SYS_HP_PAD_I2S1_MCLK_EN_M (HP_ALIVE_SYS_HP_PAD_I2S1_MCLK_EN_V << HP_ALIVE_SYS_HP_PAD_I2S1_MCLK_EN_S)
|
||||
#define HP_ALIVE_SYS_HP_PAD_I2S1_MCLK_EN_V 0x00000001U
|
||||
#define HP_ALIVE_SYS_HP_PAD_I2S1_MCLK_EN_S 31
|
||||
|
||||
/** HP_ALIVE_SYS_HP_PAD_UART0_CTRL_REG register
|
||||
* HP Clock Control Register.
|
||||
*/
|
||||
#define HP_ALIVE_SYS_HP_PAD_UART0_CTRL_REG (DR_REG_HP_ALIVE_SYS_BASE + 0x10)
|
||||
/** HP_ALIVE_SYS_HP_PAD_UART0_SLP_CLK_EN : R/W; bitpos: [31]; default: 1;
|
||||
* UART0 SLP Clock From Pad Enable.
|
||||
*/
|
||||
#define HP_ALIVE_SYS_HP_PAD_UART0_SLP_CLK_EN (BIT(31))
|
||||
#define HP_ALIVE_SYS_HP_PAD_UART0_SLP_CLK_EN_M (HP_ALIVE_SYS_HP_PAD_UART0_SLP_CLK_EN_V << HP_ALIVE_SYS_HP_PAD_UART0_SLP_CLK_EN_S)
|
||||
#define HP_ALIVE_SYS_HP_PAD_UART0_SLP_CLK_EN_V 0x00000001U
|
||||
#define HP_ALIVE_SYS_HP_PAD_UART0_SLP_CLK_EN_S 31
|
||||
|
||||
/** HP_ALIVE_SYS_HP_PAD_UART1_CTRL_REG register
|
||||
* HP Clock Control Register.
|
||||
*/
|
||||
#define HP_ALIVE_SYS_HP_PAD_UART1_CTRL_REG (DR_REG_HP_ALIVE_SYS_BASE + 0x14)
|
||||
/** HP_ALIVE_SYS_HP_PAD_UART1_SLP_CLK_EN : R/W; bitpos: [31]; default: 1;
|
||||
* UART1 SLP Clock From Pad Enable.
|
||||
*/
|
||||
#define HP_ALIVE_SYS_HP_PAD_UART1_SLP_CLK_EN (BIT(31))
|
||||
#define HP_ALIVE_SYS_HP_PAD_UART1_SLP_CLK_EN_M (HP_ALIVE_SYS_HP_PAD_UART1_SLP_CLK_EN_V << HP_ALIVE_SYS_HP_PAD_UART1_SLP_CLK_EN_S)
|
||||
#define HP_ALIVE_SYS_HP_PAD_UART1_SLP_CLK_EN_V 0x00000001U
|
||||
#define HP_ALIVE_SYS_HP_PAD_UART1_SLP_CLK_EN_S 31
|
||||
|
||||
/** HP_ALIVE_SYS_HP_PAD_UART2_CTRL_REG register
|
||||
* HP Clock Control Register.
|
||||
*/
|
||||
#define HP_ALIVE_SYS_HP_PAD_UART2_CTRL_REG (DR_REG_HP_ALIVE_SYS_BASE + 0x18)
|
||||
/** HP_ALIVE_SYS_HP_PAD_UART2_SLP_CLK_EN : R/W; bitpos: [31]; default: 1;
|
||||
* UART2 SLP Clock From Pad Enable.
|
||||
*/
|
||||
#define HP_ALIVE_SYS_HP_PAD_UART2_SLP_CLK_EN (BIT(31))
|
||||
#define HP_ALIVE_SYS_HP_PAD_UART2_SLP_CLK_EN_M (HP_ALIVE_SYS_HP_PAD_UART2_SLP_CLK_EN_V << HP_ALIVE_SYS_HP_PAD_UART2_SLP_CLK_EN_S)
|
||||
#define HP_ALIVE_SYS_HP_PAD_UART2_SLP_CLK_EN_V 0x00000001U
|
||||
#define HP_ALIVE_SYS_HP_PAD_UART2_SLP_CLK_EN_S 31
|
||||
|
||||
/** HP_ALIVE_SYS_HP_PAD_UART3_CTRL_REG register
|
||||
* HP Clock Control Register.
|
||||
*/
|
||||
#define HP_ALIVE_SYS_HP_PAD_UART3_CTRL_REG (DR_REG_HP_ALIVE_SYS_BASE + 0x1c)
|
||||
/** HP_ALIVE_SYS_HP_PAD_UART3_SLP_CLK_EN : R/W; bitpos: [31]; default: 1;
|
||||
* UART3 SLP Clock From Pad Enable.
|
||||
*/
|
||||
#define HP_ALIVE_SYS_HP_PAD_UART3_SLP_CLK_EN (BIT(31))
|
||||
#define HP_ALIVE_SYS_HP_PAD_UART3_SLP_CLK_EN_M (HP_ALIVE_SYS_HP_PAD_UART3_SLP_CLK_EN_V << HP_ALIVE_SYS_HP_PAD_UART3_SLP_CLK_EN_S)
|
||||
#define HP_ALIVE_SYS_HP_PAD_UART3_SLP_CLK_EN_V 0x00000001U
|
||||
#define HP_ALIVE_SYS_HP_PAD_UART3_SLP_CLK_EN_S 31
|
||||
|
||||
/** HP_ALIVE_SYS_MODEM_CLK_AON_REG register
|
||||
* need_des
|
||||
*/
|
||||
#define HP_ALIVE_SYS_MODEM_CLK_AON_REG (DR_REG_HP_ALIVE_SYS_BASE + 0x20)
|
||||
/** HP_ALIVE_SYS_MODEM_CLK_AON_SEL : R/W; bitpos: [31]; default: 1;
|
||||
* Modem clk aon sel. 0: foscl 1:xtal
|
||||
*/
|
||||
#define HP_ALIVE_SYS_MODEM_CLK_AON_SEL (BIT(31))
|
||||
#define HP_ALIVE_SYS_MODEM_CLK_AON_SEL_M (HP_ALIVE_SYS_MODEM_CLK_AON_SEL_V << HP_ALIVE_SYS_MODEM_CLK_AON_SEL_S)
|
||||
#define HP_ALIVE_SYS_MODEM_CLK_AON_SEL_V 0x00000001U
|
||||
#define HP_ALIVE_SYS_MODEM_CLK_AON_SEL_S 31
|
||||
|
||||
/** HP_ALIVE_SYS_USB_CTRL_REG register
|
||||
* need_des
|
||||
*/
|
||||
#define HP_ALIVE_SYS_USB_CTRL_REG (DR_REG_HP_ALIVE_SYS_BASE + 0x24)
|
||||
/** HP_ALIVE_SYS_USB_OTGHS_PHY_CHRGVBUS : R/W; bitpos: [0]; default: 0;
|
||||
* phy chrgvbus
|
||||
*/
|
||||
#define HP_ALIVE_SYS_USB_OTGHS_PHY_CHRGVBUS (BIT(0))
|
||||
#define HP_ALIVE_SYS_USB_OTGHS_PHY_CHRGVBUS_M (HP_ALIVE_SYS_USB_OTGHS_PHY_CHRGVBUS_V << HP_ALIVE_SYS_USB_OTGHS_PHY_CHRGVBUS_S)
|
||||
#define HP_ALIVE_SYS_USB_OTGHS_PHY_CHRGVBUS_V 0x00000001U
|
||||
#define HP_ALIVE_SYS_USB_OTGHS_PHY_CHRGVBUS_S 0
|
||||
/** HP_ALIVE_SYS_USB_OTGHS_PHY_DISCHRGVBUS : R/W; bitpos: [1]; default: 0;
|
||||
* phy dischrgvbus
|
||||
*/
|
||||
#define HP_ALIVE_SYS_USB_OTGHS_PHY_DISCHRGVBUS (BIT(1))
|
||||
#define HP_ALIVE_SYS_USB_OTGHS_PHY_DISCHRGVBUS_M (HP_ALIVE_SYS_USB_OTGHS_PHY_DISCHRGVBUS_V << HP_ALIVE_SYS_USB_OTGHS_PHY_DISCHRGVBUS_S)
|
||||
#define HP_ALIVE_SYS_USB_OTGHS_PHY_DISCHRGVBUS_V 0x00000001U
|
||||
#define HP_ALIVE_SYS_USB_OTGHS_PHY_DISCHRGVBUS_S 1
|
||||
/** HP_ALIVE_SYS_USB_OTGHS_PHY_DMPULLDOWN : R/W; bitpos: [2]; default: 0;
|
||||
* phy dmpulldown
|
||||
*/
|
||||
#define HP_ALIVE_SYS_USB_OTGHS_PHY_DMPULLDOWN (BIT(2))
|
||||
#define HP_ALIVE_SYS_USB_OTGHS_PHY_DMPULLDOWN_M (HP_ALIVE_SYS_USB_OTGHS_PHY_DMPULLDOWN_V << HP_ALIVE_SYS_USB_OTGHS_PHY_DMPULLDOWN_S)
|
||||
#define HP_ALIVE_SYS_USB_OTGHS_PHY_DMPULLDOWN_V 0x00000001U
|
||||
#define HP_ALIVE_SYS_USB_OTGHS_PHY_DMPULLDOWN_S 2
|
||||
/** HP_ALIVE_SYS_USB_OTGHS_PHY_DPPULLDOWN : R/W; bitpos: [3]; default: 0;
|
||||
* phy dppulldown
|
||||
*/
|
||||
#define HP_ALIVE_SYS_USB_OTGHS_PHY_DPPULLDOWN (BIT(3))
|
||||
#define HP_ALIVE_SYS_USB_OTGHS_PHY_DPPULLDOWN_M (HP_ALIVE_SYS_USB_OTGHS_PHY_DPPULLDOWN_V << HP_ALIVE_SYS_USB_OTGHS_PHY_DPPULLDOWN_S)
|
||||
#define HP_ALIVE_SYS_USB_OTGHS_PHY_DPPULLDOWN_V 0x00000001U
|
||||
#define HP_ALIVE_SYS_USB_OTGHS_PHY_DPPULLDOWN_S 3
|
||||
/** HP_ALIVE_SYS_USB_OTGHS_PHY_IDPULLUP : R/W; bitpos: [4]; default: 0;
|
||||
* phy idpullup
|
||||
*/
|
||||
#define HP_ALIVE_SYS_USB_OTGHS_PHY_IDPULLUP (BIT(4))
|
||||
#define HP_ALIVE_SYS_USB_OTGHS_PHY_IDPULLUP_M (HP_ALIVE_SYS_USB_OTGHS_PHY_IDPULLUP_V << HP_ALIVE_SYS_USB_OTGHS_PHY_IDPULLUP_S)
|
||||
#define HP_ALIVE_SYS_USB_OTGHS_PHY_IDPULLUP_V 0x00000001U
|
||||
#define HP_ALIVE_SYS_USB_OTGHS_PHY_IDPULLUP_S 4
|
||||
|
||||
/** HP_ALIVE_SYS_HP_TCM_MEM_LP_CTRL_REG register
|
||||
* configure rmemory power in lp system register
|
||||
*/
|
||||
#define HP_ALIVE_SYS_HP_TCM_MEM_LP_CTRL_REG (DR_REG_HP_ALIVE_SYS_BASE + 0x28)
|
||||
/** HP_ALIVE_SYS_HP_TCM_L0_MEM_LP_MODE : R/W; bitpos: [1:0]; default: 0;
|
||||
* Configures layer0 hp_sram memory low power mode in low power stage.
|
||||
* 0(default): deep sleep
|
||||
* 1: light sleep
|
||||
* 2: shut down
|
||||
* 3: disable low power stage
|
||||
*/
|
||||
#define HP_ALIVE_SYS_HP_TCM_L0_MEM_LP_MODE 0x00000003U
|
||||
#define HP_ALIVE_SYS_HP_TCM_L0_MEM_LP_MODE_M (HP_ALIVE_SYS_HP_TCM_L0_MEM_LP_MODE_V << HP_ALIVE_SYS_HP_TCM_L0_MEM_LP_MODE_S)
|
||||
#define HP_ALIVE_SYS_HP_TCM_L0_MEM_LP_MODE_V 0x00000003U
|
||||
#define HP_ALIVE_SYS_HP_TCM_L0_MEM_LP_MODE_S 0
|
||||
/** HP_ALIVE_SYS_HP_TCM_L0_MEM_LP_EN : R/W; bitpos: [2]; default: 0;
|
||||
* Set this bit to power down layer0 hp_sram memory.
|
||||
*/
|
||||
#define HP_ALIVE_SYS_HP_TCM_L0_MEM_LP_EN (BIT(2))
|
||||
#define HP_ALIVE_SYS_HP_TCM_L0_MEM_LP_EN_M (HP_ALIVE_SYS_HP_TCM_L0_MEM_LP_EN_V << HP_ALIVE_SYS_HP_TCM_L0_MEM_LP_EN_S)
|
||||
#define HP_ALIVE_SYS_HP_TCM_L0_MEM_LP_EN_V 0x00000001U
|
||||
#define HP_ALIVE_SYS_HP_TCM_L0_MEM_LP_EN_S 2
|
||||
/** HP_ALIVE_SYS_HP_TCM_MEM_L0_LP_FORCE_CTRL : R/W; bitpos: [3]; default: 0;
|
||||
* Set this bit to force software control layer0 hp_sram memory, disable hardware
|
||||
* control.
|
||||
*/
|
||||
#define HP_ALIVE_SYS_HP_TCM_MEM_L0_LP_FORCE_CTRL (BIT(3))
|
||||
#define HP_ALIVE_SYS_HP_TCM_MEM_L0_LP_FORCE_CTRL_M (HP_ALIVE_SYS_HP_TCM_MEM_L0_LP_FORCE_CTRL_V << HP_ALIVE_SYS_HP_TCM_MEM_L0_LP_FORCE_CTRL_S)
|
||||
#define HP_ALIVE_SYS_HP_TCM_MEM_L0_LP_FORCE_CTRL_V 0x00000001U
|
||||
#define HP_ALIVE_SYS_HP_TCM_MEM_L0_LP_FORCE_CTRL_S 3
|
||||
/** HP_ALIVE_SYS_HP_TCM_L1_MEM_LP_MODE : R/W; bitpos: [5:4]; default: 0;
|
||||
* Configures layer1 hp_sram memory low power mode in low power stage.
|
||||
* 0(default): deep sleep
|
||||
* 1: light sleep
|
||||
* 2: shut down
|
||||
* 3: disable low power stage
|
||||
*/
|
||||
#define HP_ALIVE_SYS_HP_TCM_L1_MEM_LP_MODE 0x00000003U
|
||||
#define HP_ALIVE_SYS_HP_TCM_L1_MEM_LP_MODE_M (HP_ALIVE_SYS_HP_TCM_L1_MEM_LP_MODE_V << HP_ALIVE_SYS_HP_TCM_L1_MEM_LP_MODE_S)
|
||||
#define HP_ALIVE_SYS_HP_TCM_L1_MEM_LP_MODE_V 0x00000003U
|
||||
#define HP_ALIVE_SYS_HP_TCM_L1_MEM_LP_MODE_S 4
|
||||
/** HP_ALIVE_SYS_HP_TCM_L1_MEM_LP_EN : R/W; bitpos: [6]; default: 0;
|
||||
* Set this bit to power down layer1 hp_sram memory.
|
||||
*/
|
||||
#define HP_ALIVE_SYS_HP_TCM_L1_MEM_LP_EN (BIT(6))
|
||||
#define HP_ALIVE_SYS_HP_TCM_L1_MEM_LP_EN_M (HP_ALIVE_SYS_HP_TCM_L1_MEM_LP_EN_V << HP_ALIVE_SYS_HP_TCM_L1_MEM_LP_EN_S)
|
||||
#define HP_ALIVE_SYS_HP_TCM_L1_MEM_LP_EN_V 0x00000001U
|
||||
#define HP_ALIVE_SYS_HP_TCM_L1_MEM_LP_EN_S 6
|
||||
/** HP_ALIVE_SYS_HP_TCM_MEM_L1_LP_FORCE_CTRL : R/W; bitpos: [7]; default: 0;
|
||||
* Set this bit to force software control layer1 hp_sram memory, disable hardware
|
||||
* control.
|
||||
*/
|
||||
#define HP_ALIVE_SYS_HP_TCM_MEM_L1_LP_FORCE_CTRL (BIT(7))
|
||||
#define HP_ALIVE_SYS_HP_TCM_MEM_L1_LP_FORCE_CTRL_M (HP_ALIVE_SYS_HP_TCM_MEM_L1_LP_FORCE_CTRL_V << HP_ALIVE_SYS_HP_TCM_MEM_L1_LP_FORCE_CTRL_S)
|
||||
#define HP_ALIVE_SYS_HP_TCM_MEM_L1_LP_FORCE_CTRL_V 0x00000001U
|
||||
#define HP_ALIVE_SYS_HP_TCM_MEM_L1_LP_FORCE_CTRL_S 7
|
||||
/** HP_ALIVE_SYS_HP_TCM_L2_MEM_LP_MODE : R/W; bitpos: [9:8]; default: 0;
|
||||
* Configures layer2 hp_sram memory low power mode in low power stage.
|
||||
* 0(default): deep sleep
|
||||
* 1: light sleep
|
||||
* 2: shut down
|
||||
* 3: disable low power stage
|
||||
*/
|
||||
#define HP_ALIVE_SYS_HP_TCM_L2_MEM_LP_MODE 0x00000003U
|
||||
#define HP_ALIVE_SYS_HP_TCM_L2_MEM_LP_MODE_M (HP_ALIVE_SYS_HP_TCM_L2_MEM_LP_MODE_V << HP_ALIVE_SYS_HP_TCM_L2_MEM_LP_MODE_S)
|
||||
#define HP_ALIVE_SYS_HP_TCM_L2_MEM_LP_MODE_V 0x00000003U
|
||||
#define HP_ALIVE_SYS_HP_TCM_L2_MEM_LP_MODE_S 8
|
||||
/** HP_ALIVE_SYS_HP_TCM_L2_MEM_LP_EN : R/W; bitpos: [10]; default: 0;
|
||||
* Set this bit to power down layer2 hp_sram memory.
|
||||
*/
|
||||
#define HP_ALIVE_SYS_HP_TCM_L2_MEM_LP_EN (BIT(10))
|
||||
#define HP_ALIVE_SYS_HP_TCM_L2_MEM_LP_EN_M (HP_ALIVE_SYS_HP_TCM_L2_MEM_LP_EN_V << HP_ALIVE_SYS_HP_TCM_L2_MEM_LP_EN_S)
|
||||
#define HP_ALIVE_SYS_HP_TCM_L2_MEM_LP_EN_V 0x00000001U
|
||||
#define HP_ALIVE_SYS_HP_TCM_L2_MEM_LP_EN_S 10
|
||||
/** HP_ALIVE_SYS_HP_TCM_MEM_L2_LP_FORCE_CTRL : R/W; bitpos: [11]; default: 0;
|
||||
* Set this bit to force software control layer2 hp_sram memory, disable hardware
|
||||
* control.
|
||||
*/
|
||||
#define HP_ALIVE_SYS_HP_TCM_MEM_L2_LP_FORCE_CTRL (BIT(11))
|
||||
#define HP_ALIVE_SYS_HP_TCM_MEM_L2_LP_FORCE_CTRL_M (HP_ALIVE_SYS_HP_TCM_MEM_L2_LP_FORCE_CTRL_V << HP_ALIVE_SYS_HP_TCM_MEM_L2_LP_FORCE_CTRL_S)
|
||||
#define HP_ALIVE_SYS_HP_TCM_MEM_L2_LP_FORCE_CTRL_V 0x00000001U
|
||||
#define HP_ALIVE_SYS_HP_TCM_MEM_L2_LP_FORCE_CTRL_S 11
|
||||
/** HP_ALIVE_SYS_HP_TCM_L3_MEM_LP_MODE : R/W; bitpos: [13:12]; default: 0;
|
||||
* Configures layer3 hp_sram memory low power mode in low power stage.
|
||||
* 0(default): deep sleep
|
||||
* 1: light sleep
|
||||
* 2: shut down
|
||||
* 3: disable low power stage
|
||||
*/
|
||||
#define HP_ALIVE_SYS_HP_TCM_L3_MEM_LP_MODE 0x00000003U
|
||||
#define HP_ALIVE_SYS_HP_TCM_L3_MEM_LP_MODE_M (HP_ALIVE_SYS_HP_TCM_L3_MEM_LP_MODE_V << HP_ALIVE_SYS_HP_TCM_L3_MEM_LP_MODE_S)
|
||||
#define HP_ALIVE_SYS_HP_TCM_L3_MEM_LP_MODE_V 0x00000003U
|
||||
#define HP_ALIVE_SYS_HP_TCM_L3_MEM_LP_MODE_S 12
|
||||
/** HP_ALIVE_SYS_HP_TCM_L3_MEM_LP_EN : R/W; bitpos: [14]; default: 0;
|
||||
* Set this bit to power down layer3 hp_sram memory.
|
||||
*/
|
||||
#define HP_ALIVE_SYS_HP_TCM_L3_MEM_LP_EN (BIT(14))
|
||||
#define HP_ALIVE_SYS_HP_TCM_L3_MEM_LP_EN_M (HP_ALIVE_SYS_HP_TCM_L3_MEM_LP_EN_V << HP_ALIVE_SYS_HP_TCM_L3_MEM_LP_EN_S)
|
||||
#define HP_ALIVE_SYS_HP_TCM_L3_MEM_LP_EN_V 0x00000001U
|
||||
#define HP_ALIVE_SYS_HP_TCM_L3_MEM_LP_EN_S 14
|
||||
/** HP_ALIVE_SYS_HP_TCM_MEM_L3_LP_FORCE_CTRL : R/W; bitpos: [15]; default: 0;
|
||||
* Set this bit to force software control layer3 hp_sram memory, disable hardware
|
||||
* control.
|
||||
*/
|
||||
#define HP_ALIVE_SYS_HP_TCM_MEM_L3_LP_FORCE_CTRL (BIT(15))
|
||||
#define HP_ALIVE_SYS_HP_TCM_MEM_L3_LP_FORCE_CTRL_M (HP_ALIVE_SYS_HP_TCM_MEM_L3_LP_FORCE_CTRL_V << HP_ALIVE_SYS_HP_TCM_MEM_L3_LP_FORCE_CTRL_S)
|
||||
#define HP_ALIVE_SYS_HP_TCM_MEM_L3_LP_FORCE_CTRL_V 0x00000001U
|
||||
#define HP_ALIVE_SYS_HP_TCM_MEM_L3_LP_FORCE_CTRL_S 15
|
||||
|
||||
/** HP_ALIVE_SYS_FLASH_MMU_MEM_LP_CTRL_REG register
|
||||
* configure rmemory power in lp system register
|
||||
*/
|
||||
#define HP_ALIVE_SYS_FLASH_MMU_MEM_LP_CTRL_REG (DR_REG_HP_ALIVE_SYS_BASE + 0x2c)
|
||||
/** HP_ALIVE_SYS_FLASH_MMU_MEM_LP_MODE : R/W; bitpos: [1:0]; default: 0;
|
||||
* Configures flash_mmu memory low power mode in low power stage.
|
||||
* 0: deep sleep
|
||||
* 1: light sleep
|
||||
* 2(default): shut down
|
||||
* 3: disable low power stage
|
||||
*/
|
||||
#define HP_ALIVE_SYS_FLASH_MMU_MEM_LP_MODE 0x00000003U
|
||||
#define HP_ALIVE_SYS_FLASH_MMU_MEM_LP_MODE_M (HP_ALIVE_SYS_FLASH_MMU_MEM_LP_MODE_V << HP_ALIVE_SYS_FLASH_MMU_MEM_LP_MODE_S)
|
||||
#define HP_ALIVE_SYS_FLASH_MMU_MEM_LP_MODE_V 0x00000003U
|
||||
#define HP_ALIVE_SYS_FLASH_MMU_MEM_LP_MODE_S 0
|
||||
/** HP_ALIVE_SYS_FLASH_MMU_MEM_LP_EN : R/W; bitpos: [2]; default: 0;
|
||||
* Set this bit to power down flash_mmu memory.
|
||||
*/
|
||||
#define HP_ALIVE_SYS_FLASH_MMU_MEM_LP_EN (BIT(2))
|
||||
#define HP_ALIVE_SYS_FLASH_MMU_MEM_LP_EN_M (HP_ALIVE_SYS_FLASH_MMU_MEM_LP_EN_V << HP_ALIVE_SYS_FLASH_MMU_MEM_LP_EN_S)
|
||||
#define HP_ALIVE_SYS_FLASH_MMU_MEM_LP_EN_V 0x00000001U
|
||||
#define HP_ALIVE_SYS_FLASH_MMU_MEM_LP_EN_S 2
|
||||
/** HP_ALIVE_SYS_FLASH_MMU_MEM_LP_FORCE_CTRL : R/W; bitpos: [3]; default: 0;
|
||||
* Set this bit to force software control flash_mmu memory, disable hardware control.
|
||||
*/
|
||||
#define HP_ALIVE_SYS_FLASH_MMU_MEM_LP_FORCE_CTRL (BIT(3))
|
||||
#define HP_ALIVE_SYS_FLASH_MMU_MEM_LP_FORCE_CTRL_M (HP_ALIVE_SYS_FLASH_MMU_MEM_LP_FORCE_CTRL_V << HP_ALIVE_SYS_FLASH_MMU_MEM_LP_FORCE_CTRL_S)
|
||||
#define HP_ALIVE_SYS_FLASH_MMU_MEM_LP_FORCE_CTRL_V 0x00000001U
|
||||
#define HP_ALIVE_SYS_FLASH_MMU_MEM_LP_FORCE_CTRL_S 3
|
||||
|
||||
/** HP_ALIVE_SYS_PSRAM_MMU_MEM_LP_CTRL_REG register
|
||||
* configure rmemory power in lp system register
|
||||
*/
|
||||
#define HP_ALIVE_SYS_PSRAM_MMU_MEM_LP_CTRL_REG (DR_REG_HP_ALIVE_SYS_BASE + 0x30)
|
||||
/** HP_ALIVE_SYS_PSRAM_MMU_MEM_LP_MODE : R/W; bitpos: [1:0]; default: 0;
|
||||
* Configures psram_mmu memory low power mode in low power stage.
|
||||
* 0: deep sleep
|
||||
* 1: light sleep
|
||||
* 2(default): shut down
|
||||
* 3: disable low power stage
|
||||
*/
|
||||
#define HP_ALIVE_SYS_PSRAM_MMU_MEM_LP_MODE 0x00000003U
|
||||
#define HP_ALIVE_SYS_PSRAM_MMU_MEM_LP_MODE_M (HP_ALIVE_SYS_PSRAM_MMU_MEM_LP_MODE_V << HP_ALIVE_SYS_PSRAM_MMU_MEM_LP_MODE_S)
|
||||
#define HP_ALIVE_SYS_PSRAM_MMU_MEM_LP_MODE_V 0x00000003U
|
||||
#define HP_ALIVE_SYS_PSRAM_MMU_MEM_LP_MODE_S 0
|
||||
/** HP_ALIVE_SYS_PSRAM_MMU_MEM_LP_EN : R/W; bitpos: [2]; default: 0;
|
||||
* Set this bit to power down psram_mmu memory.
|
||||
*/
|
||||
#define HP_ALIVE_SYS_PSRAM_MMU_MEM_LP_EN (BIT(2))
|
||||
#define HP_ALIVE_SYS_PSRAM_MMU_MEM_LP_EN_M (HP_ALIVE_SYS_PSRAM_MMU_MEM_LP_EN_V << HP_ALIVE_SYS_PSRAM_MMU_MEM_LP_EN_S)
|
||||
#define HP_ALIVE_SYS_PSRAM_MMU_MEM_LP_EN_V 0x00000001U
|
||||
#define HP_ALIVE_SYS_PSRAM_MMU_MEM_LP_EN_S 2
|
||||
/** HP_ALIVE_SYS_PSRAM_MMU_MEM_LP_FORCE_CTRL : R/W; bitpos: [3]; default: 0;
|
||||
* Set this bit to force software control psram_mmu memory, disable hardware control.
|
||||
*/
|
||||
#define HP_ALIVE_SYS_PSRAM_MMU_MEM_LP_FORCE_CTRL (BIT(3))
|
||||
#define HP_ALIVE_SYS_PSRAM_MMU_MEM_LP_FORCE_CTRL_M (HP_ALIVE_SYS_PSRAM_MMU_MEM_LP_FORCE_CTRL_V << HP_ALIVE_SYS_PSRAM_MMU_MEM_LP_FORCE_CTRL_S)
|
||||
#define HP_ALIVE_SYS_PSRAM_MMU_MEM_LP_FORCE_CTRL_V 0x00000001U
|
||||
#define HP_ALIVE_SYS_PSRAM_MMU_MEM_LP_FORCE_CTRL_S 3
|
||||
|
||||
/** HP_ALIVE_SYS_SPRAM_MEM_AUX_CTRL_REG register
|
||||
* spram mem aux ctrl , control TOP/CNNT/MODEM power domain
|
||||
*/
|
||||
#define HP_ALIVE_SYS_SPRAM_MEM_AUX_CTRL_REG (DR_REG_HP_ALIVE_SYS_BASE + 0x34)
|
||||
/** HP_ALIVE_SYS_SPRAM_MEM_AUX_CTRL : R/W; bitpos: [31:0]; default: 8304;
|
||||
* spram mem aux ctrl , control TOP/CNNT/MODEM power domain
|
||||
*/
|
||||
#define HP_ALIVE_SYS_SPRAM_MEM_AUX_CTRL 0xFFFFFFFFU
|
||||
#define HP_ALIVE_SYS_SPRAM_MEM_AUX_CTRL_M (HP_ALIVE_SYS_SPRAM_MEM_AUX_CTRL_V << HP_ALIVE_SYS_SPRAM_MEM_AUX_CTRL_S)
|
||||
#define HP_ALIVE_SYS_SPRAM_MEM_AUX_CTRL_V 0xFFFFFFFFU
|
||||
#define HP_ALIVE_SYS_SPRAM_MEM_AUX_CTRL_S 0
|
||||
|
||||
/** HP_ALIVE_SYS_SPRF_MEM_AUX_CTRL_REG register
|
||||
* sprf mem aux ctrl , control TOP/CNNT power domain
|
||||
*/
|
||||
#define HP_ALIVE_SYS_SPRF_MEM_AUX_CTRL_REG (DR_REG_HP_ALIVE_SYS_BASE + 0x38)
|
||||
/** HP_ALIVE_SYS_SPRF_MEM_AUX_CTRL : R/W; bitpos: [31:0]; default: 8304;
|
||||
* sprf mem aux ctrl , control TOP/CNNT/MODEM power domain
|
||||
*/
|
||||
#define HP_ALIVE_SYS_SPRF_MEM_AUX_CTRL 0xFFFFFFFFU
|
||||
#define HP_ALIVE_SYS_SPRF_MEM_AUX_CTRL_M (HP_ALIVE_SYS_SPRF_MEM_AUX_CTRL_V << HP_ALIVE_SYS_SPRF_MEM_AUX_CTRL_S)
|
||||
#define HP_ALIVE_SYS_SPRF_MEM_AUX_CTRL_V 0xFFFFFFFFU
|
||||
#define HP_ALIVE_SYS_SPRF_MEM_AUX_CTRL_S 0
|
||||
|
||||
/** HP_ALIVE_SYS_SDPRF_MEM_AUX_CTRL_REG register
|
||||
* need_des
|
||||
*/
|
||||
#define HP_ALIVE_SYS_SDPRF_MEM_AUX_CTRL_REG (DR_REG_HP_ALIVE_SYS_BASE + 0x40)
|
||||
/** HP_ALIVE_SYS_SDPRF_MEM_AUX_CTRL : R/W; bitpos: [31:0]; default: 0;
|
||||
* sdprf mem aux ctrl , control TOP/CNNT/MODEM power domain
|
||||
*/
|
||||
#define HP_ALIVE_SYS_SDPRF_MEM_AUX_CTRL 0xFFFFFFFFU
|
||||
#define HP_ALIVE_SYS_SDPRF_MEM_AUX_CTRL_M (HP_ALIVE_SYS_SDPRF_MEM_AUX_CTRL_V << HP_ALIVE_SYS_SDPRF_MEM_AUX_CTRL_S)
|
||||
#define HP_ALIVE_SYS_SDPRF_MEM_AUX_CTRL_V 0xFFFFFFFFU
|
||||
#define HP_ALIVE_SYS_SDPRF_MEM_AUX_CTRL_S 0
|
||||
|
||||
/** HP_ALIVE_SYS_CPU_SPROM_MEM_AUX_CTRL_REG register
|
||||
* need_des
|
||||
*/
|
||||
#define HP_ALIVE_SYS_CPU_SPROM_MEM_AUX_CTRL_REG (DR_REG_HP_ALIVE_SYS_BASE + 0x44)
|
||||
/** HP_ALIVE_SYS_CPU_SPROM_MEM_AUX_CTRL : R/W; bitpos: [31:0]; default: 112;
|
||||
* sprom mem aux ctrl , control CPU power domain
|
||||
*/
|
||||
#define HP_ALIVE_SYS_CPU_SPROM_MEM_AUX_CTRL 0xFFFFFFFFU
|
||||
#define HP_ALIVE_SYS_CPU_SPROM_MEM_AUX_CTRL_M (HP_ALIVE_SYS_CPU_SPROM_MEM_AUX_CTRL_V << HP_ALIVE_SYS_CPU_SPROM_MEM_AUX_CTRL_S)
|
||||
#define HP_ALIVE_SYS_CPU_SPROM_MEM_AUX_CTRL_V 0xFFFFFFFFU
|
||||
#define HP_ALIVE_SYS_CPU_SPROM_MEM_AUX_CTRL_S 0
|
||||
|
||||
/** HP_ALIVE_SYS_CPU_SPRF_MEM_AUX_CTRL_REG register
|
||||
* need_des
|
||||
*/
|
||||
#define HP_ALIVE_SYS_CPU_SPRF_MEM_AUX_CTRL_REG (DR_REG_HP_ALIVE_SYS_BASE + 0x48)
|
||||
/** HP_ALIVE_SYS_CPU_SPRF_MEM_AUX_CTRL : R/W; bitpos: [31:0]; default: 8304;
|
||||
* need_des
|
||||
*/
|
||||
#define HP_ALIVE_SYS_CPU_SPRF_MEM_AUX_CTRL 0xFFFFFFFFU
|
||||
#define HP_ALIVE_SYS_CPU_SPRF_MEM_AUX_CTRL_M (HP_ALIVE_SYS_CPU_SPRF_MEM_AUX_CTRL_V << HP_ALIVE_SYS_CPU_SPRF_MEM_AUX_CTRL_S)
|
||||
#define HP_ALIVE_SYS_CPU_SPRF_MEM_AUX_CTRL_V 0xFFFFFFFFU
|
||||
#define HP_ALIVE_SYS_CPU_SPRF_MEM_AUX_CTRL_S 0
|
||||
|
||||
/** HP_ALIVE_SYS_INTR_HP2LP_CONF_0_REG register
|
||||
* intr hp2lp configuration register 0
|
||||
*/
|
||||
#define HP_ALIVE_SYS_INTR_HP2LP_CONF_0_REG (DR_REG_HP_ALIVE_SYS_BASE + 0x7c)
|
||||
/** HP_ALIVE_SYS_INTR_HP2LP_EN_0 : R/W; bitpos: [31:0]; default: 4294967295;
|
||||
* reserved
|
||||
*/
|
||||
#define HP_ALIVE_SYS_INTR_HP2LP_EN_0 0xFFFFFFFFU
|
||||
#define HP_ALIVE_SYS_INTR_HP2LP_EN_0_M (HP_ALIVE_SYS_INTR_HP2LP_EN_0_V << HP_ALIVE_SYS_INTR_HP2LP_EN_0_S)
|
||||
#define HP_ALIVE_SYS_INTR_HP2LP_EN_0_V 0xFFFFFFFFU
|
||||
#define HP_ALIVE_SYS_INTR_HP2LP_EN_0_S 0
|
||||
|
||||
/** HP_ALIVE_SYS_INTR_HP2LP_CONF_1_REG register
|
||||
* intr hp2lp configuration register 1
|
||||
*/
|
||||
#define HP_ALIVE_SYS_INTR_HP2LP_CONF_1_REG (DR_REG_HP_ALIVE_SYS_BASE + 0x80)
|
||||
/** HP_ALIVE_SYS_INTR_HP2LP_EN_1 : R/W; bitpos: [31:0]; default: 4294967295;
|
||||
* reserved
|
||||
*/
|
||||
#define HP_ALIVE_SYS_INTR_HP2LP_EN_1 0xFFFFFFFFU
|
||||
#define HP_ALIVE_SYS_INTR_HP2LP_EN_1_M (HP_ALIVE_SYS_INTR_HP2LP_EN_1_V << HP_ALIVE_SYS_INTR_HP2LP_EN_1_S)
|
||||
#define HP_ALIVE_SYS_INTR_HP2LP_EN_1_V 0xFFFFFFFFU
|
||||
#define HP_ALIVE_SYS_INTR_HP2LP_EN_1_S 0
|
||||
|
||||
/** HP_ALIVE_SYS_INTR_HP2LP_CONF_2_REG register
|
||||
* intr hp2lp configuration register 2
|
||||
*/
|
||||
#define HP_ALIVE_SYS_INTR_HP2LP_CONF_2_REG (DR_REG_HP_ALIVE_SYS_BASE + 0x84)
|
||||
/** HP_ALIVE_SYS_INTR_HP2LP_EN_2 : R/W; bitpos: [31:0]; default: 4294967295;
|
||||
* reserved
|
||||
*/
|
||||
#define HP_ALIVE_SYS_INTR_HP2LP_EN_2 0xFFFFFFFFU
|
||||
#define HP_ALIVE_SYS_INTR_HP2LP_EN_2_M (HP_ALIVE_SYS_INTR_HP2LP_EN_2_V << HP_ALIVE_SYS_INTR_HP2LP_EN_2_S)
|
||||
#define HP_ALIVE_SYS_INTR_HP2LP_EN_2_V 0xFFFFFFFFU
|
||||
#define HP_ALIVE_SYS_INTR_HP2LP_EN_2_S 0
|
||||
|
||||
/** HP_ALIVE_SYS_INTR_HP2LP_CONF_3_REG register
|
||||
* intr hp2lp configuration register 3
|
||||
*/
|
||||
#define HP_ALIVE_SYS_INTR_HP2LP_CONF_3_REG (DR_REG_HP_ALIVE_SYS_BASE + 0x88)
|
||||
/** HP_ALIVE_SYS_INTR_HP2LP_EN_3 : R/W; bitpos: [31:0]; default: 4294967295;
|
||||
* reserved
|
||||
*/
|
||||
#define HP_ALIVE_SYS_INTR_HP2LP_EN_3 0xFFFFFFFFU
|
||||
#define HP_ALIVE_SYS_INTR_HP2LP_EN_3_M (HP_ALIVE_SYS_INTR_HP2LP_EN_3_V << HP_ALIVE_SYS_INTR_HP2LP_EN_3_S)
|
||||
#define HP_ALIVE_SYS_INTR_HP2LP_EN_3_V 0xFFFFFFFFU
|
||||
#define HP_ALIVE_SYS_INTR_HP2LP_EN_3_S 0
|
||||
|
||||
/** HP_ALIVE_SYS_INTR_HP2LP_CONF_4_REG register
|
||||
* intr hp2lp configuration register 4
|
||||
*/
|
||||
#define HP_ALIVE_SYS_INTR_HP2LP_CONF_4_REG (DR_REG_HP_ALIVE_SYS_BASE + 0x8c)
|
||||
/** HP_ALIVE_SYS_INTR_HP2LP_EN_4 : R/W; bitpos: [7:0]; default: 255;
|
||||
* reserved
|
||||
*/
|
||||
#define HP_ALIVE_SYS_INTR_HP2LP_EN_4 0x000000FFU
|
||||
#define HP_ALIVE_SYS_INTR_HP2LP_EN_4_M (HP_ALIVE_SYS_INTR_HP2LP_EN_4_V << HP_ALIVE_SYS_INTR_HP2LP_EN_4_S)
|
||||
#define HP_ALIVE_SYS_INTR_HP2LP_EN_4_V 0x000000FFU
|
||||
#define HP_ALIVE_SYS_INTR_HP2LP_EN_4_S 0
|
||||
|
||||
/** HP_ALIVE_SYS_INTR_HP2LP_STATUS_0_REG register
|
||||
* intr hp2lp status register 0
|
||||
*/
|
||||
#define HP_ALIVE_SYS_INTR_HP2LP_STATUS_0_REG (DR_REG_HP_ALIVE_SYS_BASE + 0x90)
|
||||
/** HP_ALIVE_SYS_INTR_HP2LP_STATUS_0 : RO; bitpos: [31:0]; default: 0;
|
||||
* reserved
|
||||
*/
|
||||
#define HP_ALIVE_SYS_INTR_HP2LP_STATUS_0 0xFFFFFFFFU
|
||||
#define HP_ALIVE_SYS_INTR_HP2LP_STATUS_0_M (HP_ALIVE_SYS_INTR_HP2LP_STATUS_0_V << HP_ALIVE_SYS_INTR_HP2LP_STATUS_0_S)
|
||||
#define HP_ALIVE_SYS_INTR_HP2LP_STATUS_0_V 0xFFFFFFFFU
|
||||
#define HP_ALIVE_SYS_INTR_HP2LP_STATUS_0_S 0
|
||||
|
||||
/** HP_ALIVE_SYS_INTR_HP2LP_STATUS_1_REG register
|
||||
* intr hp2lp status register 1
|
||||
*/
|
||||
#define HP_ALIVE_SYS_INTR_HP2LP_STATUS_1_REG (DR_REG_HP_ALIVE_SYS_BASE + 0x94)
|
||||
/** HP_ALIVE_SYS_INTR_HP2LP_STATUS_1 : RO; bitpos: [31:0]; default: 0;
|
||||
* reserved
|
||||
*/
|
||||
#define HP_ALIVE_SYS_INTR_HP2LP_STATUS_1 0xFFFFFFFFU
|
||||
#define HP_ALIVE_SYS_INTR_HP2LP_STATUS_1_M (HP_ALIVE_SYS_INTR_HP2LP_STATUS_1_V << HP_ALIVE_SYS_INTR_HP2LP_STATUS_1_S)
|
||||
#define HP_ALIVE_SYS_INTR_HP2LP_STATUS_1_V 0xFFFFFFFFU
|
||||
#define HP_ALIVE_SYS_INTR_HP2LP_STATUS_1_S 0
|
||||
|
||||
/** HP_ALIVE_SYS_INTR_HP2LP_STATUS_2_REG register
|
||||
* intr hp2lp status register 2
|
||||
*/
|
||||
#define HP_ALIVE_SYS_INTR_HP2LP_STATUS_2_REG (DR_REG_HP_ALIVE_SYS_BASE + 0x98)
|
||||
/** HP_ALIVE_SYS_INTR_HP2LP_STATUS_2 : RO; bitpos: [31:0]; default: 0;
|
||||
* reserved
|
||||
*/
|
||||
#define HP_ALIVE_SYS_INTR_HP2LP_STATUS_2 0xFFFFFFFFU
|
||||
#define HP_ALIVE_SYS_INTR_HP2LP_STATUS_2_M (HP_ALIVE_SYS_INTR_HP2LP_STATUS_2_V << HP_ALIVE_SYS_INTR_HP2LP_STATUS_2_S)
|
||||
#define HP_ALIVE_SYS_INTR_HP2LP_STATUS_2_V 0xFFFFFFFFU
|
||||
#define HP_ALIVE_SYS_INTR_HP2LP_STATUS_2_S 0
|
||||
|
||||
/** HP_ALIVE_SYS_INTR_HP2LP_STATUS_3_REG register
|
||||
* intr hp2lp status register 3
|
||||
*/
|
||||
#define HP_ALIVE_SYS_INTR_HP2LP_STATUS_3_REG (DR_REG_HP_ALIVE_SYS_BASE + 0x9c)
|
||||
/** HP_ALIVE_SYS_INTR_HP2LP_STATUS_3 : RO; bitpos: [31:0]; default: 0;
|
||||
* reserved
|
||||
*/
|
||||
#define HP_ALIVE_SYS_INTR_HP2LP_STATUS_3 0xFFFFFFFFU
|
||||
#define HP_ALIVE_SYS_INTR_HP2LP_STATUS_3_M (HP_ALIVE_SYS_INTR_HP2LP_STATUS_3_V << HP_ALIVE_SYS_INTR_HP2LP_STATUS_3_S)
|
||||
#define HP_ALIVE_SYS_INTR_HP2LP_STATUS_3_V 0xFFFFFFFFU
|
||||
#define HP_ALIVE_SYS_INTR_HP2LP_STATUS_3_S 0
|
||||
|
||||
/** HP_ALIVE_SYS_INTR_HP2LP_STATUS_4_REG register
|
||||
* intr hp2lp status register 4
|
||||
*/
|
||||
#define HP_ALIVE_SYS_INTR_HP2LP_STATUS_4_REG (DR_REG_HP_ALIVE_SYS_BASE + 0xa0)
|
||||
/** HP_ALIVE_SYS_INTR_HP2LP_STATUS_4 : RO; bitpos: [7:0]; default: 0;
|
||||
* reserved
|
||||
*/
|
||||
#define HP_ALIVE_SYS_INTR_HP2LP_STATUS_4 0x000000FFU
|
||||
#define HP_ALIVE_SYS_INTR_HP2LP_STATUS_4_M (HP_ALIVE_SYS_INTR_HP2LP_STATUS_4_V << HP_ALIVE_SYS_INTR_HP2LP_STATUS_4_S)
|
||||
#define HP_ALIVE_SYS_INTR_HP2LP_STATUS_4_V 0x000000FFU
|
||||
#define HP_ALIVE_SYS_INTR_HP2LP_STATUS_4_S 0
|
||||
|
||||
/** HP_ALIVE_SYS_CPU_SPRAM_MEM_AUX_CTRL_REG register
|
||||
* spram mem aux ctrl , control CPU power domain
|
||||
*/
|
||||
#define HP_ALIVE_SYS_CPU_SPRAM_MEM_AUX_CTRL_REG (DR_REG_HP_ALIVE_SYS_BASE + 0xa4)
|
||||
/** HP_ALIVE_SYS_CPU_SPRAM_MEM_AUX_CTRL : R/W; bitpos: [31:0]; default: 8304;
|
||||
* spram mem aux ctrl , control CPU power domain
|
||||
*/
|
||||
#define HP_ALIVE_SYS_CPU_SPRAM_MEM_AUX_CTRL 0xFFFFFFFFU
|
||||
#define HP_ALIVE_SYS_CPU_SPRAM_MEM_AUX_CTRL_M (HP_ALIVE_SYS_CPU_SPRAM_MEM_AUX_CTRL_V << HP_ALIVE_SYS_CPU_SPRAM_MEM_AUX_CTRL_S)
|
||||
#define HP_ALIVE_SYS_CPU_SPRAM_MEM_AUX_CTRL_V 0xFFFFFFFFU
|
||||
#define HP_ALIVE_SYS_CPU_SPRAM_MEM_AUX_CTRL_S 0
|
||||
|
||||
/** HP_ALIVE_SYS_BUS_CLOCK_GATE_BYPASS_REG register
|
||||
* bus clock gating bypass configuration register
|
||||
*/
|
||||
#define HP_ALIVE_SYS_BUS_CLOCK_GATE_BYPASS_REG (DR_REG_HP_ALIVE_SYS_BASE + 0xa8)
|
||||
/** HP_ALIVE_SYS_AHB_CLK_GATING_BYPASS : R/W; bitpos: [0]; default: 1;
|
||||
* Set 1 to bypass the clock gating for ahb bus
|
||||
*/
|
||||
#define HP_ALIVE_SYS_AHB_CLK_GATING_BYPASS (BIT(0))
|
||||
#define HP_ALIVE_SYS_AHB_CLK_GATING_BYPASS_M (HP_ALIVE_SYS_AHB_CLK_GATING_BYPASS_V << HP_ALIVE_SYS_AHB_CLK_GATING_BYPASS_S)
|
||||
#define HP_ALIVE_SYS_AHB_CLK_GATING_BYPASS_V 0x00000001U
|
||||
#define HP_ALIVE_SYS_AHB_CLK_GATING_BYPASS_S 0
|
||||
/** HP_ALIVE_SYS_APB_CLK_GATING_BYPASS : R/W; bitpos: [1]; default: 1;
|
||||
* Set 1 to bypass the clock gating for apb bus
|
||||
*/
|
||||
#define HP_ALIVE_SYS_APB_CLK_GATING_BYPASS (BIT(1))
|
||||
#define HP_ALIVE_SYS_APB_CLK_GATING_BYPASS_M (HP_ALIVE_SYS_APB_CLK_GATING_BYPASS_V << HP_ALIVE_SYS_APB_CLK_GATING_BYPASS_S)
|
||||
#define HP_ALIVE_SYS_APB_CLK_GATING_BYPASS_V 0x00000001U
|
||||
#define HP_ALIVE_SYS_APB_CLK_GATING_BYPASS_S 1
|
||||
/** HP_ALIVE_SYS_AXI_CLK_GATING_BYPASS : R/W; bitpos: [2]; default: 1;
|
||||
* Set 1 to bypass the clock gating for axi bus
|
||||
*/
|
||||
#define HP_ALIVE_SYS_AXI_CLK_GATING_BYPASS (BIT(2))
|
||||
#define HP_ALIVE_SYS_AXI_CLK_GATING_BYPASS_M (HP_ALIVE_SYS_AXI_CLK_GATING_BYPASS_V << HP_ALIVE_SYS_AXI_CLK_GATING_BYPASS_S)
|
||||
#define HP_ALIVE_SYS_AXI_CLK_GATING_BYPASS_V 0x00000001U
|
||||
#define HP_ALIVE_SYS_AXI_CLK_GATING_BYPASS_S 2
|
||||
/** HP_ALIVE_SYS_MEM_CLK_GATING_BYPASS : R/W; bitpos: [3]; default: 1;
|
||||
* Set 1 to bypass the clock gating for mem bus
|
||||
*/
|
||||
#define HP_ALIVE_SYS_MEM_CLK_GATING_BYPASS (BIT(3))
|
||||
#define HP_ALIVE_SYS_MEM_CLK_GATING_BYPASS_M (HP_ALIVE_SYS_MEM_CLK_GATING_BYPASS_V << HP_ALIVE_SYS_MEM_CLK_GATING_BYPASS_S)
|
||||
#define HP_ALIVE_SYS_MEM_CLK_GATING_BYPASS_V 0x00000001U
|
||||
#define HP_ALIVE_SYS_MEM_CLK_GATING_BYPASS_S 3
|
||||
/** HP_ALIVE_SYS_AHB_MTX_CLK_GATING_BYPASS : R/W; bitpos: [4]; default: 1;
|
||||
* Set 1 to bypass the clock gating for ahb mtx
|
||||
*/
|
||||
#define HP_ALIVE_SYS_AHB_MTX_CLK_GATING_BYPASS (BIT(4))
|
||||
#define HP_ALIVE_SYS_AHB_MTX_CLK_GATING_BYPASS_M (HP_ALIVE_SYS_AHB_MTX_CLK_GATING_BYPASS_V << HP_ALIVE_SYS_AHB_MTX_CLK_GATING_BYPASS_S)
|
||||
#define HP_ALIVE_SYS_AHB_MTX_CLK_GATING_BYPASS_V 0x00000001U
|
||||
#define HP_ALIVE_SYS_AHB_MTX_CLK_GATING_BYPASS_S 4
|
||||
|
||||
/** HP_ALIVE_SYS_RST_EVENT_BYPASS_REG register
|
||||
* bus clock gating bypass configuration register
|
||||
*/
|
||||
#define HP_ALIVE_SYS_RST_EVENT_BYPASS_REG (DR_REG_HP_ALIVE_SYS_BASE + 0xac)
|
||||
/** HP_ALIVE_SYS_RST_EVENT_BYPASS_ICMAPB : R/W; bitpos: [0]; default: 0;
|
||||
* Set 1 to bypass none-power_on reset source
|
||||
*/
|
||||
#define HP_ALIVE_SYS_RST_EVENT_BYPASS_ICMAPB (BIT(0))
|
||||
#define HP_ALIVE_SYS_RST_EVENT_BYPASS_ICMAPB_M (HP_ALIVE_SYS_RST_EVENT_BYPASS_ICMAPB_V << HP_ALIVE_SYS_RST_EVENT_BYPASS_ICMAPB_S)
|
||||
#define HP_ALIVE_SYS_RST_EVENT_BYPASS_ICMAPB_V 0x00000001U
|
||||
#define HP_ALIVE_SYS_RST_EVENT_BYPASS_ICMAPB_S 0
|
||||
/** HP_ALIVE_SYS_RST_EVENT_BYPASS_ICMSYS : R/W; bitpos: [1]; default: 0;
|
||||
* Set 1 to bypass none-power_on reset source
|
||||
*/
|
||||
#define HP_ALIVE_SYS_RST_EVENT_BYPASS_ICMSYS (BIT(1))
|
||||
#define HP_ALIVE_SYS_RST_EVENT_BYPASS_ICMSYS_M (HP_ALIVE_SYS_RST_EVENT_BYPASS_ICMSYS_V << HP_ALIVE_SYS_RST_EVENT_BYPASS_ICMSYS_S)
|
||||
#define HP_ALIVE_SYS_RST_EVENT_BYPASS_ICMSYS_V 0x00000001U
|
||||
#define HP_ALIVE_SYS_RST_EVENT_BYPASS_ICMSYS_S 1
|
||||
/** HP_ALIVE_SYS_RST_EVENT_BYPASS_ICMCPU : R/W; bitpos: [2]; default: 0;
|
||||
* Set 1 to bypass none-power_on reset source
|
||||
*/
|
||||
#define HP_ALIVE_SYS_RST_EVENT_BYPASS_ICMCPU (BIT(2))
|
||||
#define HP_ALIVE_SYS_RST_EVENT_BYPASS_ICMCPU_M (HP_ALIVE_SYS_RST_EVENT_BYPASS_ICMCPU_V << HP_ALIVE_SYS_RST_EVENT_BYPASS_ICMCPU_S)
|
||||
#define HP_ALIVE_SYS_RST_EVENT_BYPASS_ICMCPU_V 0x00000001U
|
||||
#define HP_ALIVE_SYS_RST_EVENT_BYPASS_ICMCPU_S 2
|
||||
/** HP_ALIVE_SYS_RST_EVENT_BYPASS_CLKRST : R/W; bitpos: [3]; default: 1;
|
||||
* Set 1 to bypass none-power_on reset source
|
||||
*/
|
||||
#define HP_ALIVE_SYS_RST_EVENT_BYPASS_CLKRST (BIT(3))
|
||||
#define HP_ALIVE_SYS_RST_EVENT_BYPASS_CLKRST_M (HP_ALIVE_SYS_RST_EVENT_BYPASS_CLKRST_V << HP_ALIVE_SYS_RST_EVENT_BYPASS_CLKRST_S)
|
||||
#define HP_ALIVE_SYS_RST_EVENT_BYPASS_CLKRST_V 0x00000001U
|
||||
#define HP_ALIVE_SYS_RST_EVENT_BYPASS_CLKRST_S 3
|
||||
/** HP_ALIVE_SYS_RST_EVENT_BYPASS_CLKRST_REG : R/W; bitpos: [4]; default: 0;
|
||||
* Set 1 to bypass none-power_on reset source
|
||||
*/
|
||||
#define HP_ALIVE_SYS_RST_EVENT_BYPASS_CLKRST_REG (BIT(4))
|
||||
#define HP_ALIVE_SYS_RST_EVENT_BYPASS_CLKRST_REG_M (HP_ALIVE_SYS_RST_EVENT_BYPASS_CLKRST_REG_V << HP_ALIVE_SYS_RST_EVENT_BYPASS_CLKRST_REG_S)
|
||||
#define HP_ALIVE_SYS_RST_EVENT_BYPASS_CLKRST_REG_V 0x00000001U
|
||||
#define HP_ALIVE_SYS_RST_EVENT_BYPASS_CLKRST_REG_S 4
|
||||
/** HP_ALIVE_SYS_RST_EVENT_BYPASS_IOMUX : R/W; bitpos: [5]; default: 0;
|
||||
* Set 1 to bypass none-power_on reset source
|
||||
*/
|
||||
#define HP_ALIVE_SYS_RST_EVENT_BYPASS_IOMUX (BIT(5))
|
||||
#define HP_ALIVE_SYS_RST_EVENT_BYPASS_IOMUX_M (HP_ALIVE_SYS_RST_EVENT_BYPASS_IOMUX_V << HP_ALIVE_SYS_RST_EVENT_BYPASS_IOMUX_S)
|
||||
#define HP_ALIVE_SYS_RST_EVENT_BYPASS_IOMUX_V 0x00000001U
|
||||
#define HP_ALIVE_SYS_RST_EVENT_BYPASS_IOMUX_S 5
|
||||
/** HP_ALIVE_SYS_RST_BYPASS_LOCK : R/W; bitpos: [6]; default: 0;
|
||||
* Set 1 to lock reset event bypass configuration
|
||||
*/
|
||||
#define HP_ALIVE_SYS_RST_BYPASS_LOCK (BIT(6))
|
||||
#define HP_ALIVE_SYS_RST_BYPASS_LOCK_M (HP_ALIVE_SYS_RST_BYPASS_LOCK_V << HP_ALIVE_SYS_RST_BYPASS_LOCK_S)
|
||||
#define HP_ALIVE_SYS_RST_BYPASS_LOCK_V 0x00000001U
|
||||
#define HP_ALIVE_SYS_RST_BYPASS_LOCK_S 6
|
||||
|
||||
/** HP_ALIVE_SYS_USB_OTGHS_CTRL_REG register
|
||||
* usb_otghs Control configuration register
|
||||
*/
|
||||
#define HP_ALIVE_SYS_USB_OTGHS_CTRL_REG (DR_REG_HP_ALIVE_SYS_BASE + 0xb0)
|
||||
/** HP_ALIVE_SYS_REG_USB_OTGHS_PHY_PLL_FORCE_EN : R/W; bitpos: [0]; default: 0;
|
||||
* Set this bit as 1 to force use reg_usb_otghs_phy_pll_en
|
||||
*/
|
||||
#define HP_ALIVE_SYS_REG_USB_OTGHS_PHY_PLL_FORCE_EN (BIT(0))
|
||||
#define HP_ALIVE_SYS_REG_USB_OTGHS_PHY_PLL_FORCE_EN_M (HP_ALIVE_SYS_REG_USB_OTGHS_PHY_PLL_FORCE_EN_V << HP_ALIVE_SYS_REG_USB_OTGHS_PHY_PLL_FORCE_EN_S)
|
||||
#define HP_ALIVE_SYS_REG_USB_OTGHS_PHY_PLL_FORCE_EN_V 0x00000001U
|
||||
#define HP_ALIVE_SYS_REG_USB_OTGHS_PHY_PLL_FORCE_EN_S 0
|
||||
/** HP_ALIVE_SYS_REG_USB_OTGHS_PHY_PLL_EN : R/W; bitpos: [1]; default: 0;
|
||||
* pll_en for phy inf
|
||||
*/
|
||||
#define HP_ALIVE_SYS_REG_USB_OTGHS_PHY_PLL_EN (BIT(1))
|
||||
#define HP_ALIVE_SYS_REG_USB_OTGHS_PHY_PLL_EN_M (HP_ALIVE_SYS_REG_USB_OTGHS_PHY_PLL_EN_V << HP_ALIVE_SYS_REG_USB_OTGHS_PHY_PLL_EN_S)
|
||||
#define HP_ALIVE_SYS_REG_USB_OTGHS_PHY_PLL_EN_V 0x00000001U
|
||||
#define HP_ALIVE_SYS_REG_USB_OTGHS_PHY_PLL_EN_S 1
|
||||
/** HP_ALIVE_SYS_REG_USB_OTGHS_PHY_SUSPENDM_FORCE_EN : R/W; bitpos: [2]; default: 1;
|
||||
* Set this bit as 1 to force use reg_usb_otghs_phy_suspendm
|
||||
*/
|
||||
#define HP_ALIVE_SYS_REG_USB_OTGHS_PHY_SUSPENDM_FORCE_EN (BIT(2))
|
||||
#define HP_ALIVE_SYS_REG_USB_OTGHS_PHY_SUSPENDM_FORCE_EN_M (HP_ALIVE_SYS_REG_USB_OTGHS_PHY_SUSPENDM_FORCE_EN_V << HP_ALIVE_SYS_REG_USB_OTGHS_PHY_SUSPENDM_FORCE_EN_S)
|
||||
#define HP_ALIVE_SYS_REG_USB_OTGHS_PHY_SUSPENDM_FORCE_EN_V 0x00000001U
|
||||
#define HP_ALIVE_SYS_REG_USB_OTGHS_PHY_SUSPENDM_FORCE_EN_S 2
|
||||
/** HP_ALIVE_SYS_REG_USB_OTGHS_PHY_SUSPENDM : R/W; bitpos: [3]; default: 0;
|
||||
* phy suspendm
|
||||
*/
|
||||
#define HP_ALIVE_SYS_REG_USB_OTGHS_PHY_SUSPENDM (BIT(3))
|
||||
#define HP_ALIVE_SYS_REG_USB_OTGHS_PHY_SUSPENDM_M (HP_ALIVE_SYS_REG_USB_OTGHS_PHY_SUSPENDM_V << HP_ALIVE_SYS_REG_USB_OTGHS_PHY_SUSPENDM_S)
|
||||
#define HP_ALIVE_SYS_REG_USB_OTGHS_PHY_SUSPENDM_V 0x00000001U
|
||||
#define HP_ALIVE_SYS_REG_USB_OTGHS_PHY_SUSPENDM_S 3
|
||||
/** HP_ALIVE_SYS_REG_USB_OTGHS_PHY_RESET_FORCE_EN : R/W; bitpos: [4]; default: 0;
|
||||
* Set this bit as 1 to force use reg_usb_otghs_phy_reset
|
||||
*/
|
||||
#define HP_ALIVE_SYS_REG_USB_OTGHS_PHY_RESET_FORCE_EN (BIT(4))
|
||||
#define HP_ALIVE_SYS_REG_USB_OTGHS_PHY_RESET_FORCE_EN_M (HP_ALIVE_SYS_REG_USB_OTGHS_PHY_RESET_FORCE_EN_V << HP_ALIVE_SYS_REG_USB_OTGHS_PHY_RESET_FORCE_EN_S)
|
||||
#define HP_ALIVE_SYS_REG_USB_OTGHS_PHY_RESET_FORCE_EN_V 0x00000001U
|
||||
#define HP_ALIVE_SYS_REG_USB_OTGHS_PHY_RESET_FORCE_EN_S 4
|
||||
/** HP_ALIVE_SYS_REG_USB_OTGHS_PHY_RESET : R/W; bitpos: [5]; default: 0;
|
||||
* phy reset
|
||||
*/
|
||||
#define HP_ALIVE_SYS_REG_USB_OTGHS_PHY_RESET (BIT(5))
|
||||
#define HP_ALIVE_SYS_REG_USB_OTGHS_PHY_RESET_M (HP_ALIVE_SYS_REG_USB_OTGHS_PHY_RESET_V << HP_ALIVE_SYS_REG_USB_OTGHS_PHY_RESET_S)
|
||||
#define HP_ALIVE_SYS_REG_USB_OTGHS_PHY_RESET_V 0x00000001U
|
||||
#define HP_ALIVE_SYS_REG_USB_OTGHS_PHY_RESET_S 5
|
||||
/** HP_ALIVE_SYS_REG_USB_OTGHS_PHY_TXBITSTUFF_EN : R/W; bitpos: [6]; default: 0;
|
||||
* phy txbitstuff_en
|
||||
*/
|
||||
#define HP_ALIVE_SYS_REG_USB_OTGHS_PHY_TXBITSTUFF_EN (BIT(6))
|
||||
#define HP_ALIVE_SYS_REG_USB_OTGHS_PHY_TXBITSTUFF_EN_M (HP_ALIVE_SYS_REG_USB_OTGHS_PHY_TXBITSTUFF_EN_V << HP_ALIVE_SYS_REG_USB_OTGHS_PHY_TXBITSTUFF_EN_S)
|
||||
#define HP_ALIVE_SYS_REG_USB_OTGHS_PHY_TXBITSTUFF_EN_V 0x00000001U
|
||||
#define HP_ALIVE_SYS_REG_USB_OTGHS_PHY_TXBITSTUFF_EN_S 6
|
||||
/** HP_ALIVE_SYS_REG_USB_OTGHS_PHY_OTG_SUSPENDM : R/W; bitpos: [7]; default: 0;
|
||||
* phy otg_suspendm
|
||||
*/
|
||||
#define HP_ALIVE_SYS_REG_USB_OTGHS_PHY_OTG_SUSPENDM (BIT(7))
|
||||
#define HP_ALIVE_SYS_REG_USB_OTGHS_PHY_OTG_SUSPENDM_M (HP_ALIVE_SYS_REG_USB_OTGHS_PHY_OTG_SUSPENDM_V << HP_ALIVE_SYS_REG_USB_OTGHS_PHY_OTG_SUSPENDM_S)
|
||||
#define HP_ALIVE_SYS_REG_USB_OTGHS_PHY_OTG_SUSPENDM_V 0x00000001U
|
||||
#define HP_ALIVE_SYS_REG_USB_OTGHS_PHY_OTG_SUSPENDM_S 7
|
||||
/** HP_ALIVE_SYS_REG_USB_OTGHS_PHY_REFCLK_MODE : R/W; bitpos: [8]; default: 1;
|
||||
* phy refclk_mode
|
||||
*/
|
||||
#define HP_ALIVE_SYS_REG_USB_OTGHS_PHY_REFCLK_MODE (BIT(8))
|
||||
#define HP_ALIVE_SYS_REG_USB_OTGHS_PHY_REFCLK_MODE_M (HP_ALIVE_SYS_REG_USB_OTGHS_PHY_REFCLK_MODE_V << HP_ALIVE_SYS_REG_USB_OTGHS_PHY_REFCLK_MODE_S)
|
||||
#define HP_ALIVE_SYS_REG_USB_OTGHS_PHY_REFCLK_MODE_V 0x00000001U
|
||||
#define HP_ALIVE_SYS_REG_USB_OTGHS_PHY_REFCLK_MODE_S 8
|
||||
/** HP_ALIVE_SYS_REG_USB_OTGHS_CORE_SS_SCALEDOWN_MODE : R/W; bitpos: [10:9]; default: 0;
|
||||
* usb otghs core ss_scaledown_mode
|
||||
*/
|
||||
#define HP_ALIVE_SYS_REG_USB_OTGHS_CORE_SS_SCALEDOWN_MODE 0x00000003U
|
||||
#define HP_ALIVE_SYS_REG_USB_OTGHS_CORE_SS_SCALEDOWN_MODE_M (HP_ALIVE_SYS_REG_USB_OTGHS_CORE_SS_SCALEDOWN_MODE_V << HP_ALIVE_SYS_REG_USB_OTGHS_CORE_SS_SCALEDOWN_MODE_S)
|
||||
#define HP_ALIVE_SYS_REG_USB_OTGHS_CORE_SS_SCALEDOWN_MODE_V 0x00000003U
|
||||
#define HP_ALIVE_SYS_REG_USB_OTGHS_CORE_SS_SCALEDOWN_MODE_S 9
|
||||
/** HP_ALIVE_SYS_REG_USB_OTGHS_PHY_SELF_TEST : R/W; bitpos: [11]; default: 0;
|
||||
* phy self_test
|
||||
*/
|
||||
#define HP_ALIVE_SYS_REG_USB_OTGHS_PHY_SELF_TEST (BIT(11))
|
||||
#define HP_ALIVE_SYS_REG_USB_OTGHS_PHY_SELF_TEST_M (HP_ALIVE_SYS_REG_USB_OTGHS_PHY_SELF_TEST_V << HP_ALIVE_SYS_REG_USB_OTGHS_PHY_SELF_TEST_S)
|
||||
#define HP_ALIVE_SYS_REG_USB_OTGHS_PHY_SELF_TEST_V 0x00000001U
|
||||
#define HP_ALIVE_SYS_REG_USB_OTGHS_PHY_SELF_TEST_S 11
|
||||
/** HP_ALIVE_SYS_REG_USB_OTGHS_PHY_TEST_DONE : RO; bitpos: [12]; default: 0;
|
||||
* phy test_bist
|
||||
*/
|
||||
#define HP_ALIVE_SYS_REG_USB_OTGHS_PHY_TEST_DONE (BIT(12))
|
||||
#define HP_ALIVE_SYS_REG_USB_OTGHS_PHY_TEST_DONE_M (HP_ALIVE_SYS_REG_USB_OTGHS_PHY_TEST_DONE_V << HP_ALIVE_SYS_REG_USB_OTGHS_PHY_TEST_DONE_S)
|
||||
#define HP_ALIVE_SYS_REG_USB_OTGHS_PHY_TEST_DONE_V 0x00000001U
|
||||
#define HP_ALIVE_SYS_REG_USB_OTGHS_PHY_TEST_DONE_S 12
|
||||
/** HP_ALIVE_SYS_REG_USB_OTGHS_PHY_DTO : RO; bitpos: [13]; default: 0;
|
||||
* phy dto
|
||||
*/
|
||||
#define HP_ALIVE_SYS_REG_USB_OTGHS_PHY_DTO (BIT(13))
|
||||
#define HP_ALIVE_SYS_REG_USB_OTGHS_PHY_DTO_M (HP_ALIVE_SYS_REG_USB_OTGHS_PHY_DTO_V << HP_ALIVE_SYS_REG_USB_OTGHS_PHY_DTO_S)
|
||||
#define HP_ALIVE_SYS_REG_USB_OTGHS_PHY_DTO_V 0x00000001U
|
||||
#define HP_ALIVE_SYS_REG_USB_OTGHS_PHY_DTO_S 13
|
||||
|
||||
/** HP_ALIVE_SYS_DATE_REG register
|
||||
* need_des
|
||||
*/
|
||||
#define HP_ALIVE_SYS_DATE_REG (DR_REG_HP_ALIVE_SYS_BASE + 0x3fc)
|
||||
/** HP_ALIVE_SYS_DATE : R/W; bitpos: [30:0]; default: 38834448;
|
||||
* need_des
|
||||
*/
|
||||
#define HP_ALIVE_SYS_DATE 0x7FFFFFFFU
|
||||
#define HP_ALIVE_SYS_DATE_M (HP_ALIVE_SYS_DATE_V << HP_ALIVE_SYS_DATE_S)
|
||||
#define HP_ALIVE_SYS_DATE_V 0x7FFFFFFFU
|
||||
#define HP_ALIVE_SYS_DATE_S 0
|
||||
/** HP_ALIVE_SYS_CLK_EN : R/W; bitpos: [31]; default: 0;
|
||||
* need_des
|
||||
*/
|
||||
#define HP_ALIVE_SYS_CLK_EN (BIT(31))
|
||||
#define HP_ALIVE_SYS_CLK_EN_M (HP_ALIVE_SYS_CLK_EN_V << HP_ALIVE_SYS_CLK_EN_S)
|
||||
#define HP_ALIVE_SYS_CLK_EN_V 0x00000001U
|
||||
#define HP_ALIVE_SYS_CLK_EN_S 31
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
769
components/soc/esp32s31/register/soc/hp_alive_sys_struct.h
Normal file
769
components/soc/esp32s31/register/soc/hp_alive_sys_struct.h
Normal file
@@ -0,0 +1,769 @@
|
||||
/**
|
||||
* SPDX-FileCopyrightText: 2025 Espressif Systems (Shanghai) CO LTD
|
||||
*
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
*/
|
||||
#pragma once
|
||||
|
||||
#include <stdint.h>
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
/** Group: configure_register */
|
||||
/** Type of hp_clk_ctrl register
|
||||
* HP Clock Control Register.
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
uint32_t reserved_0:17;
|
||||
/** hp_xtalx2_80m_clk_en : R/W; bitpos: [17]; default: 1;
|
||||
* XTALx2 80M Clock Enable.
|
||||
*/
|
||||
uint32_t hp_xtalx2_80m_clk_en:1;
|
||||
/** hp_root_clk_en : R/W; bitpos: [18]; default: 1;
|
||||
* HP SoC Root Clock Enable.
|
||||
*/
|
||||
uint32_t hp_root_clk_en:1;
|
||||
/** hp_xtal_32k_clk_en : R/W; bitpos: [19]; default: 1;
|
||||
* XTAL 32K Clock Enable.
|
||||
*/
|
||||
uint32_t hp_xtal_32k_clk_en:1;
|
||||
/** hp_rc_32k_clk_en : R/W; bitpos: [20]; default: 1;
|
||||
* RC 32K Clock Enable.
|
||||
*/
|
||||
uint32_t hp_rc_32k_clk_en:1;
|
||||
/** hp_sosc_150k_clk_en : R/W; bitpos: [21]; default: 1;
|
||||
* SOSC 150K Clock Enable.
|
||||
*/
|
||||
uint32_t hp_sosc_150k_clk_en:1;
|
||||
/** hp_pll_80m_clk_en : R/W; bitpos: [22]; default: 1;
|
||||
* PLL 8M Clock Enable.
|
||||
*/
|
||||
uint32_t hp_pll_80m_clk_en:1;
|
||||
/** hp_audio_pll_clk_en : R/W; bitpos: [23]; default: 1;
|
||||
* AUDIO PLL Clock Enable.
|
||||
*/
|
||||
uint32_t hp_audio_pll_clk_en:1;
|
||||
/** hp_sdio_pll2_clk_en : R/W; bitpos: [24]; default: 1;
|
||||
* reserved
|
||||
*/
|
||||
uint32_t hp_sdio_pll2_clk_en:1;
|
||||
/** hp_sdio_pll1_clk_en : R/W; bitpos: [25]; default: 1;
|
||||
* reserved
|
||||
*/
|
||||
uint32_t hp_sdio_pll1_clk_en:1;
|
||||
/** hp_sdio_pll0_clk_en : R/W; bitpos: [26]; default: 1;
|
||||
* reserved
|
||||
*/
|
||||
uint32_t hp_sdio_pll0_clk_en:1;
|
||||
/** hp_fosc_20m_clk_en : R/W; bitpos: [27]; default: 1;
|
||||
* FOSC 20M Clock Enable.
|
||||
*/
|
||||
uint32_t hp_fosc_20m_clk_en:1;
|
||||
/** hp_xtal_40m_clk_en : R/W; bitpos: [28]; default: 1;
|
||||
* XTAL 40M Clock Enable.
|
||||
*/
|
||||
uint32_t hp_xtal_40m_clk_en:1;
|
||||
/** hp_cpll_300m_clk_en : R/W; bitpos: [29]; default: 1;
|
||||
* CPLL 300M Clock Enable.
|
||||
*/
|
||||
uint32_t hp_cpll_300m_clk_en:1;
|
||||
/** hp_spll_480m_clk_en : R/W; bitpos: [30]; default: 1;
|
||||
* SPLL 480M Clock Enable.
|
||||
*/
|
||||
uint32_t hp_spll_480m_clk_en:1;
|
||||
/** hp_mpll_500m_clk_en : R/W; bitpos: [31]; default: 1;
|
||||
* MPLL 500M Clock Enable.
|
||||
*/
|
||||
uint32_t hp_mpll_500m_clk_en:1;
|
||||
};
|
||||
uint32_t val;
|
||||
} hp_alive_sys_hp_clk_ctrl_reg_t;
|
||||
|
||||
/** Type of hp_pad_parlio_ctrl register
|
||||
* HP Clock Control Register.
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
uint32_t reserved_0:30;
|
||||
/** hp_pad_parlio_tx_clk_en : R/W; bitpos: [30]; default: 1;
|
||||
* PARLIO TX Clock From Pad Enable.
|
||||
*/
|
||||
uint32_t hp_pad_parlio_tx_clk_en:1;
|
||||
/** hp_pad_parlio_rx_clk_en : R/W; bitpos: [31]; default: 1;
|
||||
* PARLIO RX Clock From Pad Enable.
|
||||
*/
|
||||
uint32_t hp_pad_parlio_rx_clk_en:1;
|
||||
};
|
||||
uint32_t val;
|
||||
} hp_alive_sys_hp_pad_parlio_ctrl_reg_t;
|
||||
|
||||
/** Type of hp_pad_i2s0_ctrl register
|
||||
* HP Clock Control Register.
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
uint32_t reserved_0:31;
|
||||
/** hp_pad_i2s0_mclk_en : R/W; bitpos: [31]; default: 1;
|
||||
* I2S0 MCLK Clock From Pad Enable.
|
||||
*/
|
||||
uint32_t hp_pad_i2s0_mclk_en:1;
|
||||
};
|
||||
uint32_t val;
|
||||
} hp_alive_sys_hp_pad_i2s0_ctrl_reg_t;
|
||||
|
||||
/** Type of hp_pad_i2s1_ctrl register
|
||||
* HP Clock Control Register.
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
uint32_t reserved_0:31;
|
||||
/** hp_pad_i2s1_mclk_en : R/W; bitpos: [31]; default: 1;
|
||||
* I2S1 MCLK Clock From Pad Enable.
|
||||
*/
|
||||
uint32_t hp_pad_i2s1_mclk_en:1;
|
||||
};
|
||||
uint32_t val;
|
||||
} hp_alive_sys_hp_pad_i2s1_ctrl_reg_t;
|
||||
|
||||
/** Type of hp_pad_uart0_ctrl register
|
||||
* HP Clock Control Register.
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
uint32_t reserved_0:31;
|
||||
/** hp_pad_uart0_slp_clk_en : R/W; bitpos: [31]; default: 1;
|
||||
* UART0 SLP Clock From Pad Enable.
|
||||
*/
|
||||
uint32_t hp_pad_uart0_slp_clk_en:1;
|
||||
};
|
||||
uint32_t val;
|
||||
} hp_alive_sys_hp_pad_uart0_ctrl_reg_t;
|
||||
|
||||
/** Type of hp_pad_uart1_ctrl register
|
||||
* HP Clock Control Register.
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
uint32_t reserved_0:31;
|
||||
/** hp_pad_uart1_slp_clk_en : R/W; bitpos: [31]; default: 1;
|
||||
* UART1 SLP Clock From Pad Enable.
|
||||
*/
|
||||
uint32_t hp_pad_uart1_slp_clk_en:1;
|
||||
};
|
||||
uint32_t val;
|
||||
} hp_alive_sys_hp_pad_uart1_ctrl_reg_t;
|
||||
|
||||
/** Type of hp_pad_uart2_ctrl register
|
||||
* HP Clock Control Register.
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
uint32_t reserved_0:31;
|
||||
/** hp_pad_uart2_slp_clk_en : R/W; bitpos: [31]; default: 1;
|
||||
* UART2 SLP Clock From Pad Enable.
|
||||
*/
|
||||
uint32_t hp_pad_uart2_slp_clk_en:1;
|
||||
};
|
||||
uint32_t val;
|
||||
} hp_alive_sys_hp_pad_uart2_ctrl_reg_t;
|
||||
|
||||
/** Type of hp_pad_uart3_ctrl register
|
||||
* HP Clock Control Register.
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
uint32_t reserved_0:31;
|
||||
/** hp_pad_uart3_slp_clk_en : R/W; bitpos: [31]; default: 1;
|
||||
* UART3 SLP Clock From Pad Enable.
|
||||
*/
|
||||
uint32_t hp_pad_uart3_slp_clk_en:1;
|
||||
};
|
||||
uint32_t val;
|
||||
} hp_alive_sys_hp_pad_uart3_ctrl_reg_t;
|
||||
|
||||
/** Type of modem_clk_aon register
|
||||
* need_des
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
uint32_t reserved_0:31;
|
||||
/** modem_clk_aon_sel : R/W; bitpos: [31]; default: 1;
|
||||
* Modem clk aon sel. 0: foscl 1:xtal
|
||||
*/
|
||||
uint32_t modem_clk_aon_sel:1;
|
||||
};
|
||||
uint32_t val;
|
||||
} hp_alive_sys_modem_clk_aon_reg_t;
|
||||
|
||||
/** Type of usb_ctrl register
|
||||
* need_des
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** usb_otghs_phy_chrgvbus : R/W; bitpos: [0]; default: 0;
|
||||
* phy chrgvbus
|
||||
*/
|
||||
uint32_t usb_otghs_phy_chrgvbus:1;
|
||||
/** usb_otghs_phy_dischrgvbus : R/W; bitpos: [1]; default: 0;
|
||||
* phy dischrgvbus
|
||||
*/
|
||||
uint32_t usb_otghs_phy_dischrgvbus:1;
|
||||
/** usb_otghs_phy_dmpulldown : R/W; bitpos: [2]; default: 0;
|
||||
* phy dmpulldown
|
||||
*/
|
||||
uint32_t usb_otghs_phy_dmpulldown:1;
|
||||
/** usb_otghs_phy_dppulldown : R/W; bitpos: [3]; default: 0;
|
||||
* phy dppulldown
|
||||
*/
|
||||
uint32_t usb_otghs_phy_dppulldown:1;
|
||||
/** usb_otghs_phy_idpullup : R/W; bitpos: [4]; default: 0;
|
||||
* phy idpullup
|
||||
*/
|
||||
uint32_t usb_otghs_phy_idpullup:1;
|
||||
uint32_t reserved_5:27;
|
||||
};
|
||||
uint32_t val;
|
||||
} hp_alive_sys_usb_ctrl_reg_t;
|
||||
|
||||
/** Type of hp_tcm_mem_lp_ctrl register
|
||||
* configure rmemory power in lp system register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** hp_tcm_l0_mem_lp_mode : R/W; bitpos: [1:0]; default: 0;
|
||||
* Configures layer0 hp_sram memory low power mode in low power stage.
|
||||
* 0(default): deep sleep
|
||||
* 1: light sleep
|
||||
* 2: shut down
|
||||
* 3: disable low power stage
|
||||
*/
|
||||
uint32_t hp_tcm_l0_mem_lp_mode:2;
|
||||
/** hp_tcm_l0_mem_lp_en : R/W; bitpos: [2]; default: 0;
|
||||
* Set this bit to power down layer0 hp_sram memory.
|
||||
*/
|
||||
uint32_t hp_tcm_l0_mem_lp_en:1;
|
||||
/** hp_tcm_mem_l0_lp_force_ctrl : R/W; bitpos: [3]; default: 0;
|
||||
* Set this bit to force software control layer0 hp_sram memory, disable hardware
|
||||
* control.
|
||||
*/
|
||||
uint32_t hp_tcm_mem_l0_lp_force_ctrl:1;
|
||||
/** hp_tcm_l1_mem_lp_mode : R/W; bitpos: [5:4]; default: 0;
|
||||
* Configures layer1 hp_sram memory low power mode in low power stage.
|
||||
* 0(default): deep sleep
|
||||
* 1: light sleep
|
||||
* 2: shut down
|
||||
* 3: disable low power stage
|
||||
*/
|
||||
uint32_t hp_tcm_l1_mem_lp_mode:2;
|
||||
/** hp_tcm_l1_mem_lp_en : R/W; bitpos: [6]; default: 0;
|
||||
* Set this bit to power down layer1 hp_sram memory.
|
||||
*/
|
||||
uint32_t hp_tcm_l1_mem_lp_en:1;
|
||||
/** hp_tcm_mem_l1_lp_force_ctrl : R/W; bitpos: [7]; default: 0;
|
||||
* Set this bit to force software control layer1 hp_sram memory, disable hardware
|
||||
* control.
|
||||
*/
|
||||
uint32_t hp_tcm_mem_l1_lp_force_ctrl:1;
|
||||
/** hp_tcm_l2_mem_lp_mode : R/W; bitpos: [9:8]; default: 0;
|
||||
* Configures layer2 hp_sram memory low power mode in low power stage.
|
||||
* 0(default): deep sleep
|
||||
* 1: light sleep
|
||||
* 2: shut down
|
||||
* 3: disable low power stage
|
||||
*/
|
||||
uint32_t hp_tcm_l2_mem_lp_mode:2;
|
||||
/** hp_tcm_l2_mem_lp_en : R/W; bitpos: [10]; default: 0;
|
||||
* Set this bit to power down layer2 hp_sram memory.
|
||||
*/
|
||||
uint32_t hp_tcm_l2_mem_lp_en:1;
|
||||
/** hp_tcm_mem_l2_lp_force_ctrl : R/W; bitpos: [11]; default: 0;
|
||||
* Set this bit to force software control layer2 hp_sram memory, disable hardware
|
||||
* control.
|
||||
*/
|
||||
uint32_t hp_tcm_mem_l2_lp_force_ctrl:1;
|
||||
/** hp_tcm_l3_mem_lp_mode : R/W; bitpos: [13:12]; default: 0;
|
||||
* Configures layer3 hp_sram memory low power mode in low power stage.
|
||||
* 0(default): deep sleep
|
||||
* 1: light sleep
|
||||
* 2: shut down
|
||||
* 3: disable low power stage
|
||||
*/
|
||||
uint32_t hp_tcm_l3_mem_lp_mode:2;
|
||||
/** hp_tcm_l3_mem_lp_en : R/W; bitpos: [14]; default: 0;
|
||||
* Set this bit to power down layer3 hp_sram memory.
|
||||
*/
|
||||
uint32_t hp_tcm_l3_mem_lp_en:1;
|
||||
/** hp_tcm_mem_l3_lp_force_ctrl : R/W; bitpos: [15]; default: 0;
|
||||
* Set this bit to force software control layer3 hp_sram memory, disable hardware
|
||||
* control.
|
||||
*/
|
||||
uint32_t hp_tcm_mem_l3_lp_force_ctrl:1;
|
||||
uint32_t reserved_16:16;
|
||||
};
|
||||
uint32_t val;
|
||||
} hp_alive_sys_hp_tcm_mem_lp_ctrl_reg_t;
|
||||
|
||||
/** Type of flash_mmu_mem_lp_ctrl register
|
||||
* configure rmemory power in lp system register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** flash_mmu_mem_lp_mode : R/W; bitpos: [1:0]; default: 0;
|
||||
* Configures flash_mmu memory low power mode in low power stage.
|
||||
* 0: deep sleep
|
||||
* 1: light sleep
|
||||
* 2(default): shut down
|
||||
* 3: disable low power stage
|
||||
*/
|
||||
uint32_t flash_mmu_mem_lp_mode:2;
|
||||
/** flash_mmu_mem_lp_en : R/W; bitpos: [2]; default: 0;
|
||||
* Set this bit to power down flash_mmu memory.
|
||||
*/
|
||||
uint32_t flash_mmu_mem_lp_en:1;
|
||||
/** flash_mmu_mem_lp_force_ctrl : R/W; bitpos: [3]; default: 0;
|
||||
* Set this bit to force software control flash_mmu memory, disable hardware control.
|
||||
*/
|
||||
uint32_t flash_mmu_mem_lp_force_ctrl:1;
|
||||
uint32_t reserved_4:28;
|
||||
};
|
||||
uint32_t val;
|
||||
} hp_alive_sys_flash_mmu_mem_lp_ctrl_reg_t;
|
||||
|
||||
/** Type of psram_mmu_mem_lp_ctrl register
|
||||
* configure rmemory power in lp system register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** psram_mmu_mem_lp_mode : R/W; bitpos: [1:0]; default: 0;
|
||||
* Configures psram_mmu memory low power mode in low power stage.
|
||||
* 0: deep sleep
|
||||
* 1: light sleep
|
||||
* 2(default): shut down
|
||||
* 3: disable low power stage
|
||||
*/
|
||||
uint32_t psram_mmu_mem_lp_mode:2;
|
||||
/** psram_mmu_mem_lp_en : R/W; bitpos: [2]; default: 0;
|
||||
* Set this bit to power down psram_mmu memory.
|
||||
*/
|
||||
uint32_t psram_mmu_mem_lp_en:1;
|
||||
/** psram_mmu_mem_lp_force_ctrl : R/W; bitpos: [3]; default: 0;
|
||||
* Set this bit to force software control psram_mmu memory, disable hardware control.
|
||||
*/
|
||||
uint32_t psram_mmu_mem_lp_force_ctrl:1;
|
||||
uint32_t reserved_4:28;
|
||||
};
|
||||
uint32_t val;
|
||||
} hp_alive_sys_psram_mmu_mem_lp_ctrl_reg_t;
|
||||
|
||||
/** Type of spram_mem_aux_ctrl register
|
||||
* spram mem aux ctrl , control TOP/CNNT/MODEM power domain
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** spram_mem_aux_ctrl : R/W; bitpos: [31:0]; default: 8304;
|
||||
* spram mem aux ctrl , control TOP/CNNT/MODEM power domain
|
||||
*/
|
||||
uint32_t spram_mem_aux_ctrl:32;
|
||||
};
|
||||
uint32_t val;
|
||||
} hp_alive_sys_spram_mem_aux_ctrl_reg_t;
|
||||
|
||||
/** Type of sprf_mem_aux_ctrl register
|
||||
* sprf mem aux ctrl , control TOP/CNNT power domain
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** sprf_mem_aux_ctrl : R/W; bitpos: [31:0]; default: 8304;
|
||||
* sprf mem aux ctrl , control TOP/CNNT/MODEM power domain
|
||||
*/
|
||||
uint32_t sprf_mem_aux_ctrl:32;
|
||||
};
|
||||
uint32_t val;
|
||||
} hp_alive_sys_sprf_mem_aux_ctrl_reg_t;
|
||||
|
||||
/** Type of sdprf_mem_aux_ctrl register
|
||||
* need_des
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** sdprf_mem_aux_ctrl : R/W; bitpos: [31:0]; default: 0;
|
||||
* sdprf mem aux ctrl , control TOP/CNNT/MODEM power domain
|
||||
*/
|
||||
uint32_t sdprf_mem_aux_ctrl:32;
|
||||
};
|
||||
uint32_t val;
|
||||
} hp_alive_sys_sdprf_mem_aux_ctrl_reg_t;
|
||||
|
||||
/** Type of cpu_sprom_mem_aux_ctrl register
|
||||
* need_des
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** cpu_sprom_mem_aux_ctrl : R/W; bitpos: [31:0]; default: 112;
|
||||
* sprom mem aux ctrl , control CPU power domain
|
||||
*/
|
||||
uint32_t cpu_sprom_mem_aux_ctrl:32;
|
||||
};
|
||||
uint32_t val;
|
||||
} hp_alive_sys_cpu_sprom_mem_aux_ctrl_reg_t;
|
||||
|
||||
/** Type of cpu_sprf_mem_aux_ctrl register
|
||||
* need_des
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** cpu_sprf_mem_aux_ctrl : R/W; bitpos: [31:0]; default: 8304;
|
||||
* need_des
|
||||
*/
|
||||
uint32_t cpu_sprf_mem_aux_ctrl:32;
|
||||
};
|
||||
uint32_t val;
|
||||
} hp_alive_sys_cpu_sprf_mem_aux_ctrl_reg_t;
|
||||
|
||||
/** Type of cpu_spram_mem_aux_ctrl register
|
||||
* spram mem aux ctrl , control CPU power domain
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** cpu_spram_mem_aux_ctrl : R/W; bitpos: [31:0]; default: 8304;
|
||||
* spram mem aux ctrl , control CPU power domain
|
||||
*/
|
||||
uint32_t cpu_spram_mem_aux_ctrl:32;
|
||||
};
|
||||
uint32_t val;
|
||||
} hp_alive_sys_cpu_spram_mem_aux_ctrl_reg_t;
|
||||
|
||||
/** Type of date register
|
||||
* need_des
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** date : R/W; bitpos: [30:0]; default: 38834448;
|
||||
* need_des
|
||||
*/
|
||||
uint32_t date:31;
|
||||
/** clk_en : R/W; bitpos: [31]; default: 0;
|
||||
* need_des
|
||||
*/
|
||||
uint32_t clk_en:1;
|
||||
};
|
||||
uint32_t val;
|
||||
} hp_alive_sys_date_reg_t;
|
||||
|
||||
|
||||
/** Group: Configuration Register */
|
||||
/** Type of intr_hp2lp_conf_0 register
|
||||
* intr hp2lp configuration register 0
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** intr_hp2lp_en_0 : R/W; bitpos: [31:0]; default: 4294967295;
|
||||
* reserved
|
||||
*/
|
||||
uint32_t intr_hp2lp_en_0:32;
|
||||
};
|
||||
uint32_t val;
|
||||
} hp_alive_sys_intr_hp2lp_conf_0_reg_t;
|
||||
|
||||
/** Type of intr_hp2lp_conf_1 register
|
||||
* intr hp2lp configuration register 1
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** intr_hp2lp_en_1 : R/W; bitpos: [31:0]; default: 4294967295;
|
||||
* reserved
|
||||
*/
|
||||
uint32_t intr_hp2lp_en_1:32;
|
||||
};
|
||||
uint32_t val;
|
||||
} hp_alive_sys_intr_hp2lp_conf_1_reg_t;
|
||||
|
||||
/** Type of intr_hp2lp_conf_2 register
|
||||
* intr hp2lp configuration register 2
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** intr_hp2lp_en_2 : R/W; bitpos: [31:0]; default: 4294967295;
|
||||
* reserved
|
||||
*/
|
||||
uint32_t intr_hp2lp_en_2:32;
|
||||
};
|
||||
uint32_t val;
|
||||
} hp_alive_sys_intr_hp2lp_conf_2_reg_t;
|
||||
|
||||
/** Type of intr_hp2lp_conf_3 register
|
||||
* intr hp2lp configuration register 3
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** intr_hp2lp_en_3 : R/W; bitpos: [31:0]; default: 4294967295;
|
||||
* reserved
|
||||
*/
|
||||
uint32_t intr_hp2lp_en_3:32;
|
||||
};
|
||||
uint32_t val;
|
||||
} hp_alive_sys_intr_hp2lp_conf_3_reg_t;
|
||||
|
||||
/** Type of intr_hp2lp_conf_4 register
|
||||
* intr hp2lp configuration register 4
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** intr_hp2lp_en_4 : R/W; bitpos: [7:0]; default: 255;
|
||||
* reserved
|
||||
*/
|
||||
uint32_t intr_hp2lp_en_4:8;
|
||||
uint32_t reserved_8:24;
|
||||
};
|
||||
uint32_t val;
|
||||
} hp_alive_sys_intr_hp2lp_conf_4_reg_t;
|
||||
|
||||
/** Type of bus_clock_gate_bypass register
|
||||
* bus clock gating bypass configuration register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** ahb_clk_gating_bypass : R/W; bitpos: [0]; default: 1;
|
||||
* Set 1 to bypass the clock gating for ahb bus
|
||||
*/
|
||||
uint32_t ahb_clk_gating_bypass:1;
|
||||
/** apb_clk_gating_bypass : R/W; bitpos: [1]; default: 1;
|
||||
* Set 1 to bypass the clock gating for apb bus
|
||||
*/
|
||||
uint32_t apb_clk_gating_bypass:1;
|
||||
/** axi_clk_gating_bypass : R/W; bitpos: [2]; default: 1;
|
||||
* Set 1 to bypass the clock gating for axi bus
|
||||
*/
|
||||
uint32_t axi_clk_gating_bypass:1;
|
||||
/** mem_clk_gating_bypass : R/W; bitpos: [3]; default: 1;
|
||||
* Set 1 to bypass the clock gating for mem bus
|
||||
*/
|
||||
uint32_t mem_clk_gating_bypass:1;
|
||||
/** ahb_mtx_clk_gating_bypass : R/W; bitpos: [4]; default: 1;
|
||||
* Set 1 to bypass the clock gating for ahb mtx
|
||||
*/
|
||||
uint32_t ahb_mtx_clk_gating_bypass:1;
|
||||
uint32_t reserved_5:27;
|
||||
};
|
||||
uint32_t val;
|
||||
} hp_alive_sys_bus_clock_gate_bypass_reg_t;
|
||||
|
||||
/** Type of rst_event_bypass register
|
||||
* bus clock gating bypass configuration register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** rst_event_bypass_icmapb : R/W; bitpos: [0]; default: 0;
|
||||
* Set 1 to bypass none-power_on reset source
|
||||
*/
|
||||
uint32_t rst_event_bypass_icmapb:1;
|
||||
/** rst_event_bypass_icmsys : R/W; bitpos: [1]; default: 0;
|
||||
* Set 1 to bypass none-power_on reset source
|
||||
*/
|
||||
uint32_t rst_event_bypass_icmsys:1;
|
||||
/** rst_event_bypass_icmcpu : R/W; bitpos: [2]; default: 0;
|
||||
* Set 1 to bypass none-power_on reset source
|
||||
*/
|
||||
uint32_t rst_event_bypass_icmcpu:1;
|
||||
/** rst_event_bypass_clkrst : R/W; bitpos: [3]; default: 1;
|
||||
* Set 1 to bypass none-power_on reset source
|
||||
*/
|
||||
uint32_t rst_event_bypass_clkrst:1;
|
||||
/** rst_event_bypass_clkrst_reg : R/W; bitpos: [4]; default: 0;
|
||||
* Set 1 to bypass none-power_on reset source
|
||||
*/
|
||||
uint32_t rst_event_bypass_clkrst_reg:1;
|
||||
/** rst_event_bypass_iomux : R/W; bitpos: [5]; default: 0;
|
||||
* Set 1 to bypass none-power_on reset source
|
||||
*/
|
||||
uint32_t rst_event_bypass_iomux:1;
|
||||
/** rst_bypass_lock : R/W; bitpos: [6]; default: 0;
|
||||
* Set 1 to lock reset event bypass configuration
|
||||
*/
|
||||
uint32_t rst_bypass_lock:1;
|
||||
uint32_t reserved_7:25;
|
||||
};
|
||||
uint32_t val;
|
||||
} hp_alive_sys_rst_event_bypass_reg_t;
|
||||
|
||||
/** Type of usb_otghs_ctrl register
|
||||
* usb_otghs Control configuration register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** reg_usb_otghs_phy_pll_force_en : R/W; bitpos: [0]; default: 0;
|
||||
* Set this bit as 1 to force use reg_usb_otghs_phy_pll_en
|
||||
*/
|
||||
uint32_t reg_usb_otghs_phy_pll_force_en:1;
|
||||
/** reg_usb_otghs_phy_pll_en : R/W; bitpos: [1]; default: 0;
|
||||
* pll_en for phy inf
|
||||
*/
|
||||
uint32_t reg_usb_otghs_phy_pll_en:1;
|
||||
/** reg_usb_otghs_phy_suspendm_force_en : R/W; bitpos: [2]; default: 1;
|
||||
* Set this bit as 1 to force use reg_usb_otghs_phy_suspendm
|
||||
*/
|
||||
uint32_t reg_usb_otghs_phy_suspendm_force_en:1;
|
||||
/** reg_usb_otghs_phy_suspendm : R/W; bitpos: [3]; default: 0;
|
||||
* phy suspendm
|
||||
*/
|
||||
uint32_t reg_usb_otghs_phy_suspendm:1;
|
||||
/** reg_usb_otghs_phy_reset_force_en : R/W; bitpos: [4]; default: 0;
|
||||
* Set this bit as 1 to force use reg_usb_otghs_phy_reset
|
||||
*/
|
||||
uint32_t reg_usb_otghs_phy_reset_force_en:1;
|
||||
/** reg_usb_otghs_phy_reset : R/W; bitpos: [5]; default: 0;
|
||||
* phy reset
|
||||
*/
|
||||
uint32_t reg_usb_otghs_phy_reset:1;
|
||||
/** reg_usb_otghs_phy_txbitstuff_en : R/W; bitpos: [6]; default: 0;
|
||||
* phy txbitstuff_en
|
||||
*/
|
||||
uint32_t reg_usb_otghs_phy_txbitstuff_en:1;
|
||||
/** reg_usb_otghs_phy_otg_suspendm : R/W; bitpos: [7]; default: 0;
|
||||
* phy otg_suspendm
|
||||
*/
|
||||
uint32_t reg_usb_otghs_phy_otg_suspendm:1;
|
||||
/** reg_usb_otghs_phy_refclk_mode : R/W; bitpos: [8]; default: 1;
|
||||
* phy refclk_mode
|
||||
*/
|
||||
uint32_t reg_usb_otghs_phy_refclk_mode:1;
|
||||
/** reg_usb_otghs_core_ss_scaledown_mode : R/W; bitpos: [10:9]; default: 0;
|
||||
* usb otghs core ss_scaledown_mode
|
||||
*/
|
||||
uint32_t reg_usb_otghs_core_ss_scaledown_mode:2;
|
||||
/** reg_usb_otghs_phy_self_test : R/W; bitpos: [11]; default: 0;
|
||||
* phy self_test
|
||||
*/
|
||||
uint32_t reg_usb_otghs_phy_self_test:1;
|
||||
/** reg_usb_otghs_phy_test_done : RO; bitpos: [12]; default: 0;
|
||||
* phy test_bist
|
||||
*/
|
||||
uint32_t reg_usb_otghs_phy_test_done:1;
|
||||
/** reg_usb_otghs_phy_dto : RO; bitpos: [13]; default: 0;
|
||||
* phy dto
|
||||
*/
|
||||
uint32_t reg_usb_otghs_phy_dto:1;
|
||||
uint32_t reserved_14:18;
|
||||
};
|
||||
uint32_t val;
|
||||
} hp_alive_sys_usb_otghs_ctrl_reg_t;
|
||||
|
||||
|
||||
/** Group: Status Register */
|
||||
/** Type of intr_hp2lp_status_0 register
|
||||
* intr hp2lp status register 0
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** intr_hp2lp_status_0 : RO; bitpos: [31:0]; default: 0;
|
||||
* reserved
|
||||
*/
|
||||
uint32_t intr_hp2lp_status_0:32;
|
||||
};
|
||||
uint32_t val;
|
||||
} hp_alive_sys_intr_hp2lp_status_0_reg_t;
|
||||
|
||||
/** Type of intr_hp2lp_status_1 register
|
||||
* intr hp2lp status register 1
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** intr_hp2lp_status_1 : RO; bitpos: [31:0]; default: 0;
|
||||
* reserved
|
||||
*/
|
||||
uint32_t intr_hp2lp_status_1:32;
|
||||
};
|
||||
uint32_t val;
|
||||
} hp_alive_sys_intr_hp2lp_status_1_reg_t;
|
||||
|
||||
/** Type of intr_hp2lp_status_2 register
|
||||
* intr hp2lp status register 2
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** intr_hp2lp_status_2 : RO; bitpos: [31:0]; default: 0;
|
||||
* reserved
|
||||
*/
|
||||
uint32_t intr_hp2lp_status_2:32;
|
||||
};
|
||||
uint32_t val;
|
||||
} hp_alive_sys_intr_hp2lp_status_2_reg_t;
|
||||
|
||||
/** Type of intr_hp2lp_status_3 register
|
||||
* intr hp2lp status register 3
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** intr_hp2lp_status_3 : RO; bitpos: [31:0]; default: 0;
|
||||
* reserved
|
||||
*/
|
||||
uint32_t intr_hp2lp_status_3:32;
|
||||
};
|
||||
uint32_t val;
|
||||
} hp_alive_sys_intr_hp2lp_status_3_reg_t;
|
||||
|
||||
/** Type of intr_hp2lp_status_4 register
|
||||
* intr hp2lp status register 4
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** intr_hp2lp_status_4 : RO; bitpos: [7:0]; default: 0;
|
||||
* reserved
|
||||
*/
|
||||
uint32_t intr_hp2lp_status_4:8;
|
||||
uint32_t reserved_8:24;
|
||||
};
|
||||
uint32_t val;
|
||||
} hp_alive_sys_intr_hp2lp_status_4_reg_t;
|
||||
|
||||
|
||||
typedef struct {
|
||||
volatile hp_alive_sys_hp_clk_ctrl_reg_t hp_clk_ctrl;
|
||||
volatile hp_alive_sys_hp_pad_parlio_ctrl_reg_t hp_pad_parlio_ctrl;
|
||||
volatile hp_alive_sys_hp_pad_i2s0_ctrl_reg_t hp_pad_i2s0_ctrl;
|
||||
volatile hp_alive_sys_hp_pad_i2s1_ctrl_reg_t hp_pad_i2s1_ctrl;
|
||||
volatile hp_alive_sys_hp_pad_uart0_ctrl_reg_t hp_pad_uart0_ctrl;
|
||||
volatile hp_alive_sys_hp_pad_uart1_ctrl_reg_t hp_pad_uart1_ctrl;
|
||||
volatile hp_alive_sys_hp_pad_uart2_ctrl_reg_t hp_pad_uart2_ctrl;
|
||||
volatile hp_alive_sys_hp_pad_uart3_ctrl_reg_t hp_pad_uart3_ctrl;
|
||||
volatile hp_alive_sys_modem_clk_aon_reg_t modem_clk_aon;
|
||||
volatile hp_alive_sys_usb_ctrl_reg_t usb_ctrl;
|
||||
volatile hp_alive_sys_hp_tcm_mem_lp_ctrl_reg_t hp_tcm_mem_lp_ctrl;
|
||||
volatile hp_alive_sys_flash_mmu_mem_lp_ctrl_reg_t flash_mmu_mem_lp_ctrl;
|
||||
volatile hp_alive_sys_psram_mmu_mem_lp_ctrl_reg_t psram_mmu_mem_lp_ctrl;
|
||||
volatile hp_alive_sys_spram_mem_aux_ctrl_reg_t spram_mem_aux_ctrl;
|
||||
volatile hp_alive_sys_sprf_mem_aux_ctrl_reg_t sprf_mem_aux_ctrl;
|
||||
uint32_t reserved_03c;
|
||||
volatile hp_alive_sys_sdprf_mem_aux_ctrl_reg_t sdprf_mem_aux_ctrl;
|
||||
volatile hp_alive_sys_cpu_sprom_mem_aux_ctrl_reg_t cpu_sprom_mem_aux_ctrl;
|
||||
volatile hp_alive_sys_cpu_sprf_mem_aux_ctrl_reg_t cpu_sprf_mem_aux_ctrl;
|
||||
uint32_t reserved_04c[12];
|
||||
volatile hp_alive_sys_intr_hp2lp_conf_0_reg_t intr_hp2lp_conf_0;
|
||||
volatile hp_alive_sys_intr_hp2lp_conf_1_reg_t intr_hp2lp_conf_1;
|
||||
volatile hp_alive_sys_intr_hp2lp_conf_2_reg_t intr_hp2lp_conf_2;
|
||||
volatile hp_alive_sys_intr_hp2lp_conf_3_reg_t intr_hp2lp_conf_3;
|
||||
volatile hp_alive_sys_intr_hp2lp_conf_4_reg_t intr_hp2lp_conf_4;
|
||||
volatile hp_alive_sys_intr_hp2lp_status_0_reg_t intr_hp2lp_status_0;
|
||||
volatile hp_alive_sys_intr_hp2lp_status_1_reg_t intr_hp2lp_status_1;
|
||||
volatile hp_alive_sys_intr_hp2lp_status_2_reg_t intr_hp2lp_status_2;
|
||||
volatile hp_alive_sys_intr_hp2lp_status_3_reg_t intr_hp2lp_status_3;
|
||||
volatile hp_alive_sys_intr_hp2lp_status_4_reg_t intr_hp2lp_status_4;
|
||||
volatile hp_alive_sys_cpu_spram_mem_aux_ctrl_reg_t cpu_spram_mem_aux_ctrl;
|
||||
volatile hp_alive_sys_bus_clock_gate_bypass_reg_t bus_clock_gate_bypass;
|
||||
volatile hp_alive_sys_rst_event_bypass_reg_t rst_event_bypass;
|
||||
volatile hp_alive_sys_usb_otghs_ctrl_reg_t usb_otghs_ctrl;
|
||||
uint32_t reserved_0b4[210];
|
||||
volatile hp_alive_sys_date_reg_t date;
|
||||
} hp_alive_sys_dev_t;
|
||||
|
||||
extern hp_alive_sys_dev_t HP_ALIVE_SYS;
|
||||
|
||||
#ifndef __cplusplus
|
||||
_Static_assert(sizeof(hp_alive_sys_dev_t) == 0x400, "Invalid size of hp_alive_sys_dev_t structure");
|
||||
#endif
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
2574
components/soc/esp32s31/register/soc/hp_apm_reg.h
Normal file
2574
components/soc/esp32s31/register/soc/hp_apm_reg.h
Normal file
File diff suppressed because it is too large
Load Diff
896
components/soc/esp32s31/register/soc/hp_apm_struct.h
Normal file
896
components/soc/esp32s31/register/soc/hp_apm_struct.h
Normal file
@@ -0,0 +1,896 @@
|
||||
/**
|
||||
* SPDX-FileCopyrightText: 2025 Espressif Systems (Shanghai) CO LTD
|
||||
*
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
*/
|
||||
#pragma once
|
||||
|
||||
#include <stdint.h>
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
/** Group: Region filter enable register */
|
||||
/** Type of region_filter_en register
|
||||
* Region filter enable register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** region_filter_en : R/W; bitpos: [15:0]; default: 1;
|
||||
* Configure bit $n (0-15) to enable region $n.
|
||||
* 0: disable
|
||||
* 1: enable
|
||||
*/
|
||||
uint32_t region_filter_en:16;
|
||||
uint32_t reserved_16:16;
|
||||
};
|
||||
uint32_t val;
|
||||
} hp_apm_region_filter_en_reg_t;
|
||||
|
||||
|
||||
/** Group: Region address register */
|
||||
/** Type of regionn_addr_start register
|
||||
* Region address register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** regionn_addr_start : R/W; bitpos: [31:0]; default: 0;
|
||||
* Configures start address of region n.
|
||||
*/
|
||||
uint32_t regionn_addr_start:32;
|
||||
};
|
||||
uint32_t val;
|
||||
} hp_apm_regionn_addr_start_reg_t;
|
||||
|
||||
/** Type of regionn_addr_end register
|
||||
* Region address register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** regionn_addr_end : R/W; bitpos: [31:0]; default: 4294967295;
|
||||
* Configures end address of region n.
|
||||
*/
|
||||
uint32_t regionn_addr_end:32;
|
||||
};
|
||||
uint32_t val;
|
||||
} hp_apm_regionn_addr_end_reg_t;
|
||||
|
||||
|
||||
/** Group: Region access authority attribute register */
|
||||
/** Type of regionn_attr register
|
||||
* Region access authority attribute register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** regionn_r0_x : R/W; bitpos: [0]; default: 0;
|
||||
* Configures the execution authority of REE_MODE 0 in region n.
|
||||
*/
|
||||
uint32_t regionn_r0_x:1;
|
||||
/** regionn_r0_w : R/W; bitpos: [1]; default: 0;
|
||||
* Configures the write authority of REE_MODE 0 in region n.
|
||||
*/
|
||||
uint32_t regionn_r0_w:1;
|
||||
/** regionn_r0_r : R/W; bitpos: [2]; default: 0;
|
||||
* Configures the read authority of REE_MODE 0 in region n.
|
||||
*/
|
||||
uint32_t regionn_r0_r:1;
|
||||
uint32_t reserved_3:1;
|
||||
/** regionn_r1_x : R/W; bitpos: [4]; default: 0;
|
||||
* Configures the execution authority of REE_MODE 1 in region n.
|
||||
*/
|
||||
uint32_t regionn_r1_x:1;
|
||||
/** regionn_r1_w : R/W; bitpos: [5]; default: 0;
|
||||
* Configures the write authority of REE_MODE 1 in region n.
|
||||
*/
|
||||
uint32_t regionn_r1_w:1;
|
||||
/** regionn_r1_r : R/W; bitpos: [6]; default: 0;
|
||||
* Configures the read authority of REE_MODE 1 in region n.
|
||||
*/
|
||||
uint32_t regionn_r1_r:1;
|
||||
uint32_t reserved_7:1;
|
||||
/** regionn_r2_x : R/W; bitpos: [8]; default: 0;
|
||||
* Configures the execution authority of REE_MODE 2 in region n.
|
||||
*/
|
||||
uint32_t regionn_r2_x:1;
|
||||
/** regionn_r2_w : R/W; bitpos: [9]; default: 0;
|
||||
* Configures the write authority of REE_MODE 2 in region n.
|
||||
*/
|
||||
uint32_t regionn_r2_w:1;
|
||||
/** regionn_r2_r : R/W; bitpos: [10]; default: 0;
|
||||
* Configures the read authority of REE_MODE 2 in region n.
|
||||
*/
|
||||
uint32_t regionn_r2_r:1;
|
||||
uint32_t reserved_11:1;
|
||||
/** regionn_tee_x : R/W; bitpos: [12]; default: 1;
|
||||
* Configures the execution authority of TEE_MODE in region n.
|
||||
*/
|
||||
uint32_t regionn_tee_x:1;
|
||||
/** regionn_tee_w : R/W; bitpos: [13]; default: 1;
|
||||
* Configures the write authority of TEE_MODE in region n.
|
||||
*/
|
||||
uint32_t regionn_tee_w:1;
|
||||
/** regionn_tee_r : R/W; bitpos: [14]; default: 1;
|
||||
* Configures the read authority of TEE_MODE in region n.
|
||||
*/
|
||||
uint32_t regionn_tee_r:1;
|
||||
uint32_t reserved_15:1;
|
||||
/** regionn_lock : R/W; bitpos: [16]; default: 0;
|
||||
* Set 1 to lock region0 configuration
|
||||
*/
|
||||
uint32_t regionn_lock:1;
|
||||
uint32_t reserved_17:15;
|
||||
};
|
||||
uint32_t val;
|
||||
} hp_apm_regionn_attr_reg_t;
|
||||
|
||||
|
||||
/** Group: function control register */
|
||||
/** Type of func_ctrl register
|
||||
* APM function control register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** m0_func_en : R/W; bitpos: [0]; default: 1;
|
||||
* PMS M0 function enable
|
||||
*/
|
||||
uint32_t m0_func_en:1;
|
||||
/** m1_func_en : R/W; bitpos: [1]; default: 1;
|
||||
* PMS M1 function enable
|
||||
*/
|
||||
uint32_t m1_func_en:1;
|
||||
/** m2_func_en : R/W; bitpos: [2]; default: 1;
|
||||
* PMS M2 function enable
|
||||
*/
|
||||
uint32_t m2_func_en:1;
|
||||
/** m3_func_en : R/W; bitpos: [3]; default: 1;
|
||||
* PMS M3 function enable
|
||||
*/
|
||||
uint32_t m3_func_en:1;
|
||||
/** m4_func_en : R/W; bitpos: [4]; default: 1;
|
||||
* PMS M4 function enable
|
||||
*/
|
||||
uint32_t m4_func_en:1;
|
||||
/** m5_func_en : R/W; bitpos: [5]; default: 1;
|
||||
* PMS M5 function enable
|
||||
*/
|
||||
uint32_t m5_func_en:1;
|
||||
/** m6_func_en : R/W; bitpos: [6]; default: 1;
|
||||
* PMS M6 function enable
|
||||
*/
|
||||
uint32_t m6_func_en:1;
|
||||
uint32_t reserved_7:25;
|
||||
};
|
||||
uint32_t val;
|
||||
} hp_apm_func_ctrl_reg_t;
|
||||
|
||||
|
||||
/** Group: M0 status register */
|
||||
/** Type of m0_status register
|
||||
* M0 status register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** m0_exception_status : RO; bitpos: [1:0]; default: 0;
|
||||
* Represents exception status.
|
||||
* bit0: 1 represents authority_exception
|
||||
* bit1: 1 represents space_exception
|
||||
*/
|
||||
uint32_t m0_exception_status:2;
|
||||
uint32_t reserved_2:30;
|
||||
};
|
||||
uint32_t val;
|
||||
} hp_apm_m0_status_reg_t;
|
||||
|
||||
|
||||
/** Group: M0 status clear register */
|
||||
/** Type of m0_status_clr register
|
||||
* M0 status clear register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** m0_exception_status_clr : WT; bitpos: [0]; default: 0;
|
||||
* Configures to clear exception status.
|
||||
*/
|
||||
uint32_t m0_exception_status_clr:1;
|
||||
uint32_t reserved_1:31;
|
||||
};
|
||||
uint32_t val;
|
||||
} hp_apm_m0_status_clr_reg_t;
|
||||
|
||||
|
||||
/** Group: M0 exception_info0 register */
|
||||
/** Type of m0_exception_info0 register
|
||||
* M0 exception_info0 register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** m0_exception_region : RO; bitpos: [15:0]; default: 0;
|
||||
* Represents exception region.
|
||||
*/
|
||||
uint32_t m0_exception_region:16;
|
||||
/** m0_exception_mode : RO; bitpos: [17:16]; default: 0;
|
||||
* Represents exception mode.
|
||||
*/
|
||||
uint32_t m0_exception_mode:2;
|
||||
/** m0_exception_id : RO; bitpos: [23:18]; default: 0;
|
||||
* Represents exception id information.
|
||||
*/
|
||||
uint32_t m0_exception_id:6;
|
||||
uint32_t reserved_24:8;
|
||||
};
|
||||
uint32_t val;
|
||||
} hp_apm_m0_exception_info0_reg_t;
|
||||
|
||||
|
||||
/** Group: M0 exception_info1 register */
|
||||
/** Type of m0_exception_info1 register
|
||||
* M0 exception_info1 register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** m0_exception_addr : RO; bitpos: [31:0]; default: 0;
|
||||
* Represents exception addr.
|
||||
*/
|
||||
uint32_t m0_exception_addr:32;
|
||||
};
|
||||
uint32_t val;
|
||||
} hp_apm_m0_exception_info1_reg_t;
|
||||
|
||||
|
||||
/** Group: M1 status register */
|
||||
/** Type of m1_status register
|
||||
* M1 status register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** m1_exception_status : RO; bitpos: [1:0]; default: 0;
|
||||
* Represents exception status.
|
||||
* bit0: 1 represents authority_exception
|
||||
* bit1: 1 represents space_exception
|
||||
*/
|
||||
uint32_t m1_exception_status:2;
|
||||
uint32_t reserved_2:30;
|
||||
};
|
||||
uint32_t val;
|
||||
} hp_apm_m1_status_reg_t;
|
||||
|
||||
|
||||
/** Group: M1 status clear register */
|
||||
/** Type of m1_status_clr register
|
||||
* M1 status clear register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** m1_exception_status_clr : WT; bitpos: [0]; default: 0;
|
||||
* Configures to clear exception status.
|
||||
*/
|
||||
uint32_t m1_exception_status_clr:1;
|
||||
uint32_t reserved_1:31;
|
||||
};
|
||||
uint32_t val;
|
||||
} hp_apm_m1_status_clr_reg_t;
|
||||
|
||||
|
||||
/** Group: M1 exception_info0 register */
|
||||
/** Type of m1_exception_info0 register
|
||||
* M1 exception_info0 register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** m1_exception_region : RO; bitpos: [15:0]; default: 0;
|
||||
* Represents exception region.
|
||||
*/
|
||||
uint32_t m1_exception_region:16;
|
||||
/** m1_exception_mode : RO; bitpos: [17:16]; default: 0;
|
||||
* Represents exception mode.
|
||||
*/
|
||||
uint32_t m1_exception_mode:2;
|
||||
/** m1_exception_id : RO; bitpos: [23:18]; default: 0;
|
||||
* Represents exception id information.
|
||||
*/
|
||||
uint32_t m1_exception_id:6;
|
||||
uint32_t reserved_24:8;
|
||||
};
|
||||
uint32_t val;
|
||||
} hp_apm_m1_exception_info0_reg_t;
|
||||
|
||||
|
||||
/** Group: M1 exception_info1 register */
|
||||
/** Type of m1_exception_info1 register
|
||||
* M1 exception_info1 register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** m1_exception_addr : RO; bitpos: [31:0]; default: 0;
|
||||
* Represents exception addr.
|
||||
*/
|
||||
uint32_t m1_exception_addr:32;
|
||||
};
|
||||
uint32_t val;
|
||||
} hp_apm_m1_exception_info1_reg_t;
|
||||
|
||||
|
||||
/** Group: M2 status register */
|
||||
/** Type of m2_status register
|
||||
* M2 status register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** m2_exception_status : RO; bitpos: [1:0]; default: 0;
|
||||
* Represents exception status.
|
||||
* bit0: 1 represents authority_exception
|
||||
* bit1: 1 represents space_exception
|
||||
*/
|
||||
uint32_t m2_exception_status:2;
|
||||
uint32_t reserved_2:30;
|
||||
};
|
||||
uint32_t val;
|
||||
} hp_apm_m2_status_reg_t;
|
||||
|
||||
|
||||
/** Group: M2 status clear register */
|
||||
/** Type of m2_status_clr register
|
||||
* M2 status clear register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** m2_exception_status_clr : WT; bitpos: [0]; default: 0;
|
||||
* Configures to clear exception status.
|
||||
*/
|
||||
uint32_t m2_exception_status_clr:1;
|
||||
uint32_t reserved_1:31;
|
||||
};
|
||||
uint32_t val;
|
||||
} hp_apm_m2_status_clr_reg_t;
|
||||
|
||||
|
||||
/** Group: M2 exception_info0 register */
|
||||
/** Type of m2_exception_info0 register
|
||||
* M2 exception_info0 register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** m2_exception_region : RO; bitpos: [15:0]; default: 0;
|
||||
* Represents exception region.
|
||||
*/
|
||||
uint32_t m2_exception_region:16;
|
||||
/** m2_exception_mode : RO; bitpos: [17:16]; default: 0;
|
||||
* Represents exception mode.
|
||||
*/
|
||||
uint32_t m2_exception_mode:2;
|
||||
/** m2_exception_id : RO; bitpos: [23:18]; default: 0;
|
||||
* Represents exception id information.
|
||||
*/
|
||||
uint32_t m2_exception_id:6;
|
||||
uint32_t reserved_24:8;
|
||||
};
|
||||
uint32_t val;
|
||||
} hp_apm_m2_exception_info0_reg_t;
|
||||
|
||||
|
||||
/** Group: M2 exception_info1 register */
|
||||
/** Type of m2_exception_info1 register
|
||||
* M2 exception_info1 register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** m2_exception_addr : RO; bitpos: [31:0]; default: 0;
|
||||
* Represents exception addr.
|
||||
*/
|
||||
uint32_t m2_exception_addr:32;
|
||||
};
|
||||
uint32_t val;
|
||||
} hp_apm_m2_exception_info1_reg_t;
|
||||
|
||||
|
||||
/** Group: M3 status register */
|
||||
/** Type of m3_status register
|
||||
* M3 status register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** m3_exception_status : RO; bitpos: [1:0]; default: 0;
|
||||
* Represents exception status.
|
||||
* bit0: 1 represents authority_exception
|
||||
* bit1: 1 represents space_exception
|
||||
*/
|
||||
uint32_t m3_exception_status:2;
|
||||
uint32_t reserved_2:30;
|
||||
};
|
||||
uint32_t val;
|
||||
} hp_apm_m3_status_reg_t;
|
||||
|
||||
|
||||
/** Group: M3 status clear register */
|
||||
/** Type of m3_status_clr register
|
||||
* M3 status clear register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** m3_exception_status_clr : WT; bitpos: [0]; default: 0;
|
||||
* Configures to clear exception status.
|
||||
*/
|
||||
uint32_t m3_exception_status_clr:1;
|
||||
uint32_t reserved_1:31;
|
||||
};
|
||||
uint32_t val;
|
||||
} hp_apm_m3_status_clr_reg_t;
|
||||
|
||||
|
||||
/** Group: M3 exception_info0 register */
|
||||
/** Type of m3_exception_info0 register
|
||||
* M3 exception_info0 register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** m3_exception_region : RO; bitpos: [15:0]; default: 0;
|
||||
* Represents exception region.
|
||||
*/
|
||||
uint32_t m3_exception_region:16;
|
||||
/** m3_exception_mode : RO; bitpos: [17:16]; default: 0;
|
||||
* Represents exception mode.
|
||||
*/
|
||||
uint32_t m3_exception_mode:2;
|
||||
/** m3_exception_id : RO; bitpos: [23:18]; default: 0;
|
||||
* Represents exception id information.
|
||||
*/
|
||||
uint32_t m3_exception_id:6;
|
||||
uint32_t reserved_24:8;
|
||||
};
|
||||
uint32_t val;
|
||||
} hp_apm_m3_exception_info0_reg_t;
|
||||
|
||||
|
||||
/** Group: M3 exception_info1 register */
|
||||
/** Type of m3_exception_info1 register
|
||||
* M3 exception_info1 register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** m3_exception_addr : RO; bitpos: [31:0]; default: 0;
|
||||
* Represents exception addr.
|
||||
*/
|
||||
uint32_t m3_exception_addr:32;
|
||||
};
|
||||
uint32_t val;
|
||||
} hp_apm_m3_exception_info1_reg_t;
|
||||
|
||||
|
||||
/** Group: M4 status register */
|
||||
/** Type of m4_status register
|
||||
* M4 status register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** m4_exception_status : RO; bitpos: [1:0]; default: 0;
|
||||
* Represents exception status.
|
||||
* bit0: 1 represents authority_exception
|
||||
* bit1: 1 represents space_exception
|
||||
*/
|
||||
uint32_t m4_exception_status:2;
|
||||
uint32_t reserved_2:30;
|
||||
};
|
||||
uint32_t val;
|
||||
} hp_apm_m4_status_reg_t;
|
||||
|
||||
|
||||
/** Group: M4 status clear register */
|
||||
/** Type of m4_status_clr register
|
||||
* M4 status clear register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** m4_exception_status_clr : WT; bitpos: [0]; default: 0;
|
||||
* Configures to clear exception status.
|
||||
*/
|
||||
uint32_t m4_exception_status_clr:1;
|
||||
uint32_t reserved_1:31;
|
||||
};
|
||||
uint32_t val;
|
||||
} hp_apm_m4_status_clr_reg_t;
|
||||
|
||||
|
||||
/** Group: M4 exception_info0 register */
|
||||
/** Type of m4_exception_info0 register
|
||||
* M4 exception_info0 register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** m4_exception_region : RO; bitpos: [15:0]; default: 0;
|
||||
* Represents exception region.
|
||||
*/
|
||||
uint32_t m4_exception_region:16;
|
||||
/** m4_exception_mode : RO; bitpos: [17:16]; default: 0;
|
||||
* Represents exception mode.
|
||||
*/
|
||||
uint32_t m4_exception_mode:2;
|
||||
/** m4_exception_id : RO; bitpos: [23:18]; default: 0;
|
||||
* Represents exception id information.
|
||||
*/
|
||||
uint32_t m4_exception_id:6;
|
||||
uint32_t reserved_24:8;
|
||||
};
|
||||
uint32_t val;
|
||||
} hp_apm_m4_exception_info0_reg_t;
|
||||
|
||||
|
||||
/** Group: M4 exception_info1 register */
|
||||
/** Type of m4_exception_info1 register
|
||||
* M4 exception_info1 register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** m4_exception_addr : RO; bitpos: [31:0]; default: 0;
|
||||
* Represents exception addr.
|
||||
*/
|
||||
uint32_t m4_exception_addr:32;
|
||||
};
|
||||
uint32_t val;
|
||||
} hp_apm_m4_exception_info1_reg_t;
|
||||
|
||||
|
||||
/** Group: M5 status register */
|
||||
/** Type of m5_status register
|
||||
* M5 status register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** m5_exception_status : RO; bitpos: [1:0]; default: 0;
|
||||
* Represents exception status.
|
||||
* bit0: 1 represents authority_exception
|
||||
* bit1: 1 represents space_exception
|
||||
*/
|
||||
uint32_t m5_exception_status:2;
|
||||
uint32_t reserved_2:30;
|
||||
};
|
||||
uint32_t val;
|
||||
} hp_apm_m5_status_reg_t;
|
||||
|
||||
|
||||
/** Group: M5 status clear register */
|
||||
/** Type of m5_status_clr register
|
||||
* M5 status clear register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** m5_exception_status_clr : WT; bitpos: [0]; default: 0;
|
||||
* Configures to clear exception status.
|
||||
*/
|
||||
uint32_t m5_exception_status_clr:1;
|
||||
uint32_t reserved_1:31;
|
||||
};
|
||||
uint32_t val;
|
||||
} hp_apm_m5_status_clr_reg_t;
|
||||
|
||||
|
||||
/** Group: M5 exception_info0 register */
|
||||
/** Type of m5_exception_info0 register
|
||||
* M5 exception_info0 register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** m5_exception_region : RO; bitpos: [15:0]; default: 0;
|
||||
* Represents exception region.
|
||||
*/
|
||||
uint32_t m5_exception_region:16;
|
||||
/** m5_exception_mode : RO; bitpos: [17:16]; default: 0;
|
||||
* Represents exception mode.
|
||||
*/
|
||||
uint32_t m5_exception_mode:2;
|
||||
/** m5_exception_id : RO; bitpos: [24:18]; default: 0;
|
||||
* Represents exception id information.
|
||||
*/
|
||||
uint32_t m5_exception_id:7;
|
||||
uint32_t reserved_25:7;
|
||||
};
|
||||
uint32_t val;
|
||||
} hp_apm_m5_exception_info0_reg_t;
|
||||
|
||||
|
||||
/** Group: M5 exception_info1 register */
|
||||
/** Type of m5_exception_info1 register
|
||||
* M5 exception_info1 register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** m5_exception_addr : RO; bitpos: [31:0]; default: 0;
|
||||
* Represents exception addr.
|
||||
*/
|
||||
uint32_t m5_exception_addr:32;
|
||||
};
|
||||
uint32_t val;
|
||||
} hp_apm_m5_exception_info1_reg_t;
|
||||
|
||||
|
||||
/** Group: M6 status register */
|
||||
/** Type of m6_status register
|
||||
* M6 status register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** m6_exception_status : RO; bitpos: [1:0]; default: 0;
|
||||
* Represents exception status.
|
||||
* bit0: 1 represents authority_exception
|
||||
* bit1: 1 represents space_exception
|
||||
*/
|
||||
uint32_t m6_exception_status:2;
|
||||
uint32_t reserved_2:30;
|
||||
};
|
||||
uint32_t val;
|
||||
} hp_apm_m6_status_reg_t;
|
||||
|
||||
|
||||
/** Group: M6 status clear register */
|
||||
/** Type of m6_status_clr register
|
||||
* M6 status clear register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** m6_exception_status_clr : WT; bitpos: [0]; default: 0;
|
||||
* Configures to clear exception status.
|
||||
*/
|
||||
uint32_t m6_exception_status_clr:1;
|
||||
uint32_t reserved_1:31;
|
||||
};
|
||||
uint32_t val;
|
||||
} hp_apm_m6_status_clr_reg_t;
|
||||
|
||||
|
||||
/** Group: M6 exception_info0 register */
|
||||
/** Type of m6_exception_info0 register
|
||||
* M6 exception_info0 register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** m6_exception_region : RO; bitpos: [15:0]; default: 0;
|
||||
* Represents exception region.
|
||||
*/
|
||||
uint32_t m6_exception_region:16;
|
||||
/** m6_exception_mode : RO; bitpos: [17:16]; default: 0;
|
||||
* Represents exception mode.
|
||||
*/
|
||||
uint32_t m6_exception_mode:2;
|
||||
/** m6_exception_id : RO; bitpos: [24:18]; default: 0;
|
||||
* Represents exception id information.
|
||||
*/
|
||||
uint32_t m6_exception_id:7;
|
||||
uint32_t reserved_25:7;
|
||||
};
|
||||
uint32_t val;
|
||||
} hp_apm_m6_exception_info0_reg_t;
|
||||
|
||||
|
||||
/** Group: M6 exception_info1 register */
|
||||
/** Type of m6_exception_info1 register
|
||||
* M6 exception_info1 register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** m6_exception_addr : RO; bitpos: [31:0]; default: 0;
|
||||
* Represents exception addr.
|
||||
*/
|
||||
uint32_t m6_exception_addr:32;
|
||||
};
|
||||
uint32_t val;
|
||||
} hp_apm_m6_exception_info1_reg_t;
|
||||
|
||||
|
||||
/** Group: APM interrupt enable register */
|
||||
/** Type of int_en register
|
||||
* APM interrupt enable register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** m0_apm_int_en : R/W; bitpos: [0]; default: 0;
|
||||
* Configures to enable APM M0 interrupt.
|
||||
* 0: disable
|
||||
* 1: enable
|
||||
*/
|
||||
uint32_t m0_apm_int_en:1;
|
||||
/** m1_apm_int_en : R/W; bitpos: [1]; default: 0;
|
||||
* Configures to enable APM M1 interrupt.
|
||||
* 0: disable
|
||||
* 1: enable
|
||||
*/
|
||||
uint32_t m1_apm_int_en:1;
|
||||
/** m2_apm_int_en : R/W; bitpos: [2]; default: 0;
|
||||
* Configures to enable APM M2 interrupt.
|
||||
* 0: disable
|
||||
* 1: enable
|
||||
*/
|
||||
uint32_t m2_apm_int_en:1;
|
||||
/** m3_apm_int_en : R/W; bitpos: [3]; default: 0;
|
||||
* Configures to enable APM M3 interrupt.
|
||||
* 0: disable
|
||||
* 1: enable
|
||||
*/
|
||||
uint32_t m3_apm_int_en:1;
|
||||
/** m4_apm_int_en : R/W; bitpos: [4]; default: 0;
|
||||
* Configures to enable APM M4 interrupt.
|
||||
* 0: disable
|
||||
* 1: enable
|
||||
*/
|
||||
uint32_t m4_apm_int_en:1;
|
||||
/** m5_apm_int_en : R/W; bitpos: [5]; default: 0;
|
||||
* Configures to enable APM M5 interrupt.
|
||||
* 0: disable
|
||||
* 1: enable
|
||||
*/
|
||||
uint32_t m5_apm_int_en:1;
|
||||
/** m6_apm_int_en : R/W; bitpos: [6]; default: 0;
|
||||
* Configures to enable APM M6 interrupt.
|
||||
* 0: disable
|
||||
* 1: enable
|
||||
*/
|
||||
uint32_t m6_apm_int_en:1;
|
||||
uint32_t reserved_7:25;
|
||||
};
|
||||
uint32_t val;
|
||||
} hp_apm_int_en_reg_t;
|
||||
|
||||
/** Type of bus_err_conf register
|
||||
* APM interrupt enable register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** bus_err_resp_en : R/W; bitpos: [0]; default: 0;
|
||||
* Configures whether return error response to cpu when access blocked
|
||||
* 0: disable error response
|
||||
* 1: enable error response
|
||||
*/
|
||||
uint32_t bus_err_resp_en:1;
|
||||
uint32_t reserved_1:31;
|
||||
};
|
||||
uint32_t val;
|
||||
} hp_apm_bus_err_conf_reg_t;
|
||||
|
||||
|
||||
/** Group: APM transmission config register */
|
||||
/** Type of axi_block_en register
|
||||
* M6 status clear register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** axi_block_en : R/W; bitpos: [0]; default: 1;
|
||||
* Configures to if block transmission when get exceltion.
|
||||
* 0: transparent transmission to slave
|
||||
* 1: don't transparent transmission to slave
|
||||
*/
|
||||
uint32_t axi_block_en:1;
|
||||
uint32_t reserved_1:31;
|
||||
};
|
||||
uint32_t val;
|
||||
} hp_apm_axi_block_en_reg_t;
|
||||
|
||||
|
||||
/** Group: Clock gating register */
|
||||
/** Type of clock_gate register
|
||||
* Clock gating register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** clk_en : R/W; bitpos: [0]; default: 1;
|
||||
* Configures whether to keep the clock always on.
|
||||
* 0: enable automatic clock gating
|
||||
* 1: keep the clock always on
|
||||
*/
|
||||
uint32_t clk_en:1;
|
||||
uint32_t reserved_1:31;
|
||||
};
|
||||
uint32_t val;
|
||||
} hp_apm_clock_gate_reg_t;
|
||||
|
||||
|
||||
/** Group: Version control register */
|
||||
/** Type of date register
|
||||
* Version control register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** date : R/W; bitpos: [27:0]; default: 38822496;
|
||||
* Version control register.
|
||||
*/
|
||||
uint32_t date:28;
|
||||
uint32_t reserved_28:4;
|
||||
};
|
||||
uint32_t val;
|
||||
} hp_apm_date_reg_t;
|
||||
|
||||
|
||||
typedef struct {
|
||||
volatile hp_apm_region_filter_en_reg_t region_filter_en;
|
||||
volatile hp_apm_regionn_addr_start_reg_t region0_addr_start;
|
||||
volatile hp_apm_regionn_addr_end_reg_t region0_addr_end;
|
||||
volatile hp_apm_regionn_attr_reg_t region0_attr;
|
||||
volatile hp_apm_regionn_addr_start_reg_t region1_addr_start;
|
||||
volatile hp_apm_regionn_addr_end_reg_t region1_addr_end;
|
||||
volatile hp_apm_regionn_attr_reg_t region1_attr;
|
||||
volatile hp_apm_regionn_addr_start_reg_t region2_addr_start;
|
||||
volatile hp_apm_regionn_addr_end_reg_t region2_addr_end;
|
||||
volatile hp_apm_regionn_attr_reg_t region2_attr;
|
||||
volatile hp_apm_regionn_addr_start_reg_t region3_addr_start;
|
||||
volatile hp_apm_regionn_addr_end_reg_t region3_addr_end;
|
||||
volatile hp_apm_regionn_attr_reg_t region3_attr;
|
||||
volatile hp_apm_regionn_addr_start_reg_t region4_addr_start;
|
||||
volatile hp_apm_regionn_addr_end_reg_t region4_addr_end;
|
||||
volatile hp_apm_regionn_attr_reg_t region4_attr;
|
||||
volatile hp_apm_regionn_addr_start_reg_t region5_addr_start;
|
||||
volatile hp_apm_regionn_addr_end_reg_t region5_addr_end;
|
||||
volatile hp_apm_regionn_attr_reg_t region5_attr;
|
||||
volatile hp_apm_regionn_addr_start_reg_t region6_addr_start;
|
||||
volatile hp_apm_regionn_addr_end_reg_t region6_addr_end;
|
||||
volatile hp_apm_regionn_attr_reg_t region6_attr;
|
||||
volatile hp_apm_regionn_addr_start_reg_t region7_addr_start;
|
||||
volatile hp_apm_regionn_addr_end_reg_t region7_addr_end;
|
||||
volatile hp_apm_regionn_attr_reg_t region7_attr;
|
||||
volatile hp_apm_regionn_addr_start_reg_t region8_addr_start;
|
||||
volatile hp_apm_regionn_addr_end_reg_t region8_addr_end;
|
||||
volatile hp_apm_regionn_attr_reg_t region8_attr;
|
||||
volatile hp_apm_regionn_addr_start_reg_t region9_addr_start;
|
||||
volatile hp_apm_regionn_addr_end_reg_t region9_addr_end;
|
||||
volatile hp_apm_regionn_attr_reg_t region9_attr;
|
||||
volatile hp_apm_regionn_addr_start_reg_t region10_addr_start;
|
||||
volatile hp_apm_regionn_addr_end_reg_t region10_addr_end;
|
||||
volatile hp_apm_regionn_attr_reg_t region10_attr;
|
||||
volatile hp_apm_regionn_addr_start_reg_t region11_addr_start;
|
||||
volatile hp_apm_regionn_addr_end_reg_t region11_addr_end;
|
||||
volatile hp_apm_regionn_attr_reg_t region11_attr;
|
||||
volatile hp_apm_regionn_addr_start_reg_t region12_addr_start;
|
||||
volatile hp_apm_regionn_addr_end_reg_t region12_addr_end;
|
||||
volatile hp_apm_regionn_attr_reg_t region12_attr;
|
||||
volatile hp_apm_regionn_addr_start_reg_t region13_addr_start;
|
||||
volatile hp_apm_regionn_addr_end_reg_t region13_addr_end;
|
||||
volatile hp_apm_regionn_attr_reg_t region13_attr;
|
||||
volatile hp_apm_regionn_addr_start_reg_t region14_addr_start;
|
||||
volatile hp_apm_regionn_addr_end_reg_t region14_addr_end;
|
||||
volatile hp_apm_regionn_attr_reg_t region14_attr;
|
||||
volatile hp_apm_regionn_addr_start_reg_t region15_addr_start;
|
||||
volatile hp_apm_regionn_addr_end_reg_t region15_addr_end;
|
||||
volatile hp_apm_regionn_attr_reg_t region15_attr;
|
||||
volatile hp_apm_func_ctrl_reg_t func_ctrl;
|
||||
volatile hp_apm_m0_status_reg_t m0_status;
|
||||
volatile hp_apm_m0_status_clr_reg_t m0_status_clr;
|
||||
volatile hp_apm_m0_exception_info0_reg_t m0_exception_info0;
|
||||
volatile hp_apm_m0_exception_info1_reg_t m0_exception_info1;
|
||||
volatile hp_apm_m1_status_reg_t m1_status;
|
||||
volatile hp_apm_m1_status_clr_reg_t m1_status_clr;
|
||||
volatile hp_apm_m1_exception_info0_reg_t m1_exception_info0;
|
||||
volatile hp_apm_m1_exception_info1_reg_t m1_exception_info1;
|
||||
volatile hp_apm_m2_status_reg_t m2_status;
|
||||
volatile hp_apm_m2_status_clr_reg_t m2_status_clr;
|
||||
volatile hp_apm_m2_exception_info0_reg_t m2_exception_info0;
|
||||
volatile hp_apm_m2_exception_info1_reg_t m2_exception_info1;
|
||||
volatile hp_apm_m3_status_reg_t m3_status;
|
||||
volatile hp_apm_m3_status_clr_reg_t m3_status_clr;
|
||||
volatile hp_apm_m3_exception_info0_reg_t m3_exception_info0;
|
||||
volatile hp_apm_m3_exception_info1_reg_t m3_exception_info1;
|
||||
volatile hp_apm_m4_status_reg_t m4_status;
|
||||
volatile hp_apm_m4_status_clr_reg_t m4_status_clr;
|
||||
volatile hp_apm_m4_exception_info0_reg_t m4_exception_info0;
|
||||
volatile hp_apm_m4_exception_info1_reg_t m4_exception_info1;
|
||||
volatile hp_apm_m5_status_reg_t m5_status;
|
||||
volatile hp_apm_m5_status_clr_reg_t m5_status_clr;
|
||||
volatile hp_apm_m5_exception_info0_reg_t m5_exception_info0;
|
||||
volatile hp_apm_m5_exception_info1_reg_t m5_exception_info1;
|
||||
uint32_t reserved_128;
|
||||
volatile hp_apm_m6_status_reg_t m6_status;
|
||||
volatile hp_apm_m6_status_clr_reg_t m6_status_clr;
|
||||
volatile hp_apm_m6_exception_info0_reg_t m6_exception_info0;
|
||||
volatile hp_apm_m6_exception_info1_reg_t m6_exception_info1;
|
||||
uint32_t reserved_13c[4];
|
||||
volatile hp_apm_int_en_reg_t int_en;
|
||||
volatile hp_apm_axi_block_en_reg_t axi_block_en;
|
||||
volatile hp_apm_bus_err_conf_reg_t bus_err_conf;
|
||||
uint32_t reserved_158[168];
|
||||
volatile hp_apm_clock_gate_reg_t clock_gate;
|
||||
volatile hp_apm_date_reg_t date;
|
||||
} hp_apm_dev_t;
|
||||
|
||||
|
||||
#ifndef __cplusplus
|
||||
_Static_assert(sizeof(hp_apm_dev_t) == 0x400, "Invalid size of hp_apm_dev_t structure");
|
||||
#endif
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
1744
components/soc/esp32s31/register/soc/hp_mem_apm_reg.h
Normal file
1744
components/soc/esp32s31/register/soc/hp_mem_apm_reg.h
Normal file
File diff suppressed because it is too large
Load Diff
787
components/soc/esp32s31/register/soc/hp_mem_apm_struct.h
Normal file
787
components/soc/esp32s31/register/soc/hp_mem_apm_struct.h
Normal file
@@ -0,0 +1,787 @@
|
||||
/**
|
||||
* SPDX-FileCopyrightText: 2025 Espressif Systems (Shanghai) CO LTD
|
||||
*
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
*/
|
||||
#pragma once
|
||||
|
||||
#include <stdint.h>
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
/** Group: Region filter enable register */
|
||||
/** Type of region_filter_en register
|
||||
* Region filter enable register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** region_filter_en : R/W; bitpos: [7:0]; default: 1;
|
||||
* Configure bit $n (0-7) to enable region $n.
|
||||
* 0: disable
|
||||
* 1: enable
|
||||
*/
|
||||
uint32_t region_filter_en:8;
|
||||
uint32_t reserved_8:24;
|
||||
};
|
||||
uint32_t val;
|
||||
} hp_mem_apm_region_filter_en_reg_t;
|
||||
|
||||
|
||||
/** Group: Region address register */
|
||||
/** Type of regionn_addr_start register
|
||||
* Region address register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** regionn_addr_start_l : HRO; bitpos: [6:0]; default: 0;
|
||||
* Low 12 bit, start address of region n.
|
||||
*/
|
||||
uint32_t regionn_addr_start_l:7;
|
||||
/** regionn_addr_start : R/W; bitpos: [18:7]; default: 0;
|
||||
* Configures start address of region n.
|
||||
*/
|
||||
uint32_t regionn_addr_start:12;
|
||||
/** regionn_addr_start_h : HRO; bitpos: [31:19]; default: 1504;
|
||||
* High 13 bit, start address of region n.
|
||||
*/
|
||||
uint32_t regionn_addr_start_h:13;
|
||||
};
|
||||
uint32_t val;
|
||||
} hp_mem_apm_regionn_addr_start_reg_t;
|
||||
|
||||
/** Type of regionn_addr_end register
|
||||
* Region address register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** regionn_addr_end_l : HRO; bitpos: [6:0]; default: 127;
|
||||
* Low 12 bit, end address of region n.
|
||||
*/
|
||||
uint32_t regionn_addr_end_l:7;
|
||||
/** regionn_addr_end : R/W; bitpos: [18:7]; default: 4095;
|
||||
* Configures end address of region n.
|
||||
*/
|
||||
uint32_t regionn_addr_end:12;
|
||||
/** regionn_addr_end_h : HRO; bitpos: [31:19]; default: 1504;
|
||||
* High 13 bit, end address of region n.
|
||||
*/
|
||||
uint32_t regionn_addr_end_h:13;
|
||||
};
|
||||
uint32_t val;
|
||||
} hp_mem_apm_regionn_addr_end_reg_t;
|
||||
|
||||
|
||||
/** Group: Region access authority attribute register */
|
||||
/** Type of regionn_attr register
|
||||
* Region access authority attribute register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** regionn_r0_x : R/W; bitpos: [0]; default: 0;
|
||||
* Configures the execution authority of REE_MODE 0 in region n.
|
||||
*/
|
||||
uint32_t regionn_r0_x:1;
|
||||
/** regionn_r0_w : R/W; bitpos: [1]; default: 0;
|
||||
* Configures the write authority of REE_MODE 0 in region n.
|
||||
*/
|
||||
uint32_t regionn_r0_w:1;
|
||||
/** regionn_r0_r : R/W; bitpos: [2]; default: 0;
|
||||
* Configures the read authority of REE_MODE 0 in region n.
|
||||
*/
|
||||
uint32_t regionn_r0_r:1;
|
||||
uint32_t reserved_3:1;
|
||||
/** regionn_r1_x : R/W; bitpos: [4]; default: 0;
|
||||
* Configures the execution authority of REE_MODE 1 in region n.
|
||||
*/
|
||||
uint32_t regionn_r1_x:1;
|
||||
/** regionn_r1_w : R/W; bitpos: [5]; default: 0;
|
||||
* Configures the write authority of REE_MODE 1 in region n.
|
||||
*/
|
||||
uint32_t regionn_r1_w:1;
|
||||
/** regionn_r1_r : R/W; bitpos: [6]; default: 0;
|
||||
* Configures the read authority of REE_MODE 1 in region n.
|
||||
*/
|
||||
uint32_t regionn_r1_r:1;
|
||||
uint32_t reserved_7:1;
|
||||
/** regionn_r2_x : R/W; bitpos: [8]; default: 0;
|
||||
* Configures the execution authority of REE_MODE 2 in region n.
|
||||
*/
|
||||
uint32_t regionn_r2_x:1;
|
||||
/** regionn_r2_w : R/W; bitpos: [9]; default: 0;
|
||||
* Configures the write authority of REE_MODE 2 in region n.
|
||||
*/
|
||||
uint32_t regionn_r2_w:1;
|
||||
/** regionn_r2_r : R/W; bitpos: [10]; default: 0;
|
||||
* Configures the read authority of REE_MODE 2 in region n.
|
||||
*/
|
||||
uint32_t regionn_r2_r:1;
|
||||
uint32_t reserved_11:1;
|
||||
/** regionn_tee_x : R/W; bitpos: [12]; default: 1;
|
||||
* Configures the execution authority of TEE_MODE in region n.
|
||||
*/
|
||||
uint32_t regionn_tee_x:1;
|
||||
/** regionn_tee_w : R/W; bitpos: [13]; default: 1;
|
||||
* Configures the write authority of TEE_MODE in region n.
|
||||
*/
|
||||
uint32_t regionn_tee_w:1;
|
||||
/** regionn_tee_r : R/W; bitpos: [14]; default: 1;
|
||||
* Configures the read authority of TEE_MODE in region n.
|
||||
*/
|
||||
uint32_t regionn_tee_r:1;
|
||||
uint32_t reserved_15:1;
|
||||
/** regionn_lock : R/W; bitpos: [16]; default: 0;
|
||||
* Set 1 to lock region0 configuration
|
||||
*/
|
||||
uint32_t regionn_lock:1;
|
||||
uint32_t reserved_17:15;
|
||||
};
|
||||
uint32_t val;
|
||||
} hp_mem_apm_regionn_attr_reg_t;
|
||||
|
||||
|
||||
/** Group: function control register */
|
||||
/** Type of func_ctrl register
|
||||
* APM function control register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** m0_func_en : R/W; bitpos: [0]; default: 1;
|
||||
* PMS M0 function enable
|
||||
*/
|
||||
uint32_t m0_func_en:1;
|
||||
/** m1_func_en : R/W; bitpos: [1]; default: 1;
|
||||
* PMS M1 function enable
|
||||
*/
|
||||
uint32_t m1_func_en:1;
|
||||
/** m2_func_en : R/W; bitpos: [2]; default: 1;
|
||||
* PMS M2 function enable
|
||||
*/
|
||||
uint32_t m2_func_en:1;
|
||||
/** m3_func_en : R/W; bitpos: [3]; default: 1;
|
||||
* PMS M3 function enable
|
||||
*/
|
||||
uint32_t m3_func_en:1;
|
||||
/** m4_func_en : R/W; bitpos: [4]; default: 1;
|
||||
* PMS M4 function enable
|
||||
*/
|
||||
uint32_t m4_func_en:1;
|
||||
/** m5_func_en : R/W; bitpos: [5]; default: 1;
|
||||
* PMS M5 function enable
|
||||
*/
|
||||
uint32_t m5_func_en:1;
|
||||
uint32_t reserved_6:26;
|
||||
};
|
||||
uint32_t val;
|
||||
} hp_mem_apm_func_ctrl_reg_t;
|
||||
|
||||
|
||||
/** Group: M0 status register */
|
||||
/** Type of m0_status register
|
||||
* M0 status register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** m0_exception_status : RO; bitpos: [1:0]; default: 0;
|
||||
* Represents exception status.
|
||||
* bit0: 1 represents authority_exception
|
||||
* bit1: 1 represents space_exception
|
||||
*/
|
||||
uint32_t m0_exception_status:2;
|
||||
uint32_t reserved_2:30;
|
||||
};
|
||||
uint32_t val;
|
||||
} hp_mem_apm_m0_status_reg_t;
|
||||
|
||||
|
||||
/** Group: M0 status clear register */
|
||||
/** Type of m0_status_clr register
|
||||
* M0 status clear register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** m0_exception_status_clr : WT; bitpos: [0]; default: 0;
|
||||
* Configures to clear exception status.
|
||||
*/
|
||||
uint32_t m0_exception_status_clr:1;
|
||||
uint32_t reserved_1:31;
|
||||
};
|
||||
uint32_t val;
|
||||
} hp_mem_apm_m0_status_clr_reg_t;
|
||||
|
||||
|
||||
/** Group: M0 exception_info0 register */
|
||||
/** Type of m0_exception_info0 register
|
||||
* M0 exception_info0 register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** m0_exception_region : RO; bitpos: [7:0]; default: 0;
|
||||
* Represents exception region.
|
||||
*/
|
||||
uint32_t m0_exception_region:8;
|
||||
uint32_t reserved_8:8;
|
||||
/** m0_exception_mode : RO; bitpos: [17:16]; default: 0;
|
||||
* Represents exception mode.
|
||||
*/
|
||||
uint32_t m0_exception_mode:2;
|
||||
/** m0_exception_id : RO; bitpos: [22:18]; default: 0;
|
||||
* Represents exception id information.
|
||||
*/
|
||||
uint32_t m0_exception_id:5;
|
||||
uint32_t reserved_23:9;
|
||||
};
|
||||
uint32_t val;
|
||||
} hp_mem_apm_m0_exception_info0_reg_t;
|
||||
|
||||
|
||||
/** Group: M0 exception_info1 register */
|
||||
/** Type of m0_exception_info1 register
|
||||
* M0 exception_info1 register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** m0_exception_addr : RO; bitpos: [31:0]; default: 0;
|
||||
* Represents exception addr.
|
||||
*/
|
||||
uint32_t m0_exception_addr:32;
|
||||
};
|
||||
uint32_t val;
|
||||
} hp_mem_apm_m0_exception_info1_reg_t;
|
||||
|
||||
|
||||
/** Group: M1 status register */
|
||||
/** Type of m1_status register
|
||||
* M1 status register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** m1_exception_status : RO; bitpos: [1:0]; default: 0;
|
||||
* Represents exception status.
|
||||
* bit0: 1 represents authority_exception
|
||||
* bit1: 1 represents space_exception
|
||||
*/
|
||||
uint32_t m1_exception_status:2;
|
||||
uint32_t reserved_2:30;
|
||||
};
|
||||
uint32_t val;
|
||||
} hp_mem_apm_m1_status_reg_t;
|
||||
|
||||
|
||||
/** Group: M1 status clear register */
|
||||
/** Type of m1_status_clr register
|
||||
* M1 status clear register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** m1_exception_status_clr : WT; bitpos: [0]; default: 0;
|
||||
* Configures to clear exception status.
|
||||
*/
|
||||
uint32_t m1_exception_status_clr:1;
|
||||
uint32_t reserved_1:31;
|
||||
};
|
||||
uint32_t val;
|
||||
} hp_mem_apm_m1_status_clr_reg_t;
|
||||
|
||||
|
||||
/** Group: M1 exception_info0 register */
|
||||
/** Type of m1_exception_info0 register
|
||||
* M1 exception_info0 register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** m1_exception_region : RO; bitpos: [7:0]; default: 0;
|
||||
* Represents exception region.
|
||||
*/
|
||||
uint32_t m1_exception_region:8;
|
||||
uint32_t reserved_8:8;
|
||||
/** m1_exception_mode : RO; bitpos: [17:16]; default: 0;
|
||||
* Represents exception mode.
|
||||
*/
|
||||
uint32_t m1_exception_mode:2;
|
||||
/** m1_exception_id : RO; bitpos: [22:18]; default: 0;
|
||||
* Represents exception id information.
|
||||
*/
|
||||
uint32_t m1_exception_id:5;
|
||||
uint32_t reserved_23:9;
|
||||
};
|
||||
uint32_t val;
|
||||
} hp_mem_apm_m1_exception_info0_reg_t;
|
||||
|
||||
|
||||
/** Group: M1 exception_info1 register */
|
||||
/** Type of m1_exception_info1 register
|
||||
* M1 exception_info1 register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** m1_exception_addr : RO; bitpos: [31:0]; default: 0;
|
||||
* Represents exception addr.
|
||||
*/
|
||||
uint32_t m1_exception_addr:32;
|
||||
};
|
||||
uint32_t val;
|
||||
} hp_mem_apm_m1_exception_info1_reg_t;
|
||||
|
||||
|
||||
/** Group: M2 status register */
|
||||
/** Type of m2_status register
|
||||
* M2 status register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** m2_exception_status : RO; bitpos: [1:0]; default: 0;
|
||||
* Represents exception status.
|
||||
* bit0: 1 represents authority_exception
|
||||
* bit1: 1 represents space_exception
|
||||
*/
|
||||
uint32_t m2_exception_status:2;
|
||||
uint32_t reserved_2:30;
|
||||
};
|
||||
uint32_t val;
|
||||
} hp_mem_apm_m2_status_reg_t;
|
||||
|
||||
|
||||
/** Group: M2 status clear register */
|
||||
/** Type of m2_status_clr register
|
||||
* M2 status clear register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** m2_exception_status_clr : WT; bitpos: [0]; default: 0;
|
||||
* Configures to clear exception status.
|
||||
*/
|
||||
uint32_t m2_exception_status_clr:1;
|
||||
uint32_t reserved_1:31;
|
||||
};
|
||||
uint32_t val;
|
||||
} hp_mem_apm_m2_status_clr_reg_t;
|
||||
|
||||
|
||||
/** Group: M2 exception_info0 register */
|
||||
/** Type of m2_exception_info0 register
|
||||
* M2 exception_info0 register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** m2_exception_region : RO; bitpos: [7:0]; default: 0;
|
||||
* Represents exception region.
|
||||
*/
|
||||
uint32_t m2_exception_region:8;
|
||||
uint32_t reserved_8:8;
|
||||
/** m2_exception_mode : RO; bitpos: [17:16]; default: 0;
|
||||
* Represents exception mode.
|
||||
*/
|
||||
uint32_t m2_exception_mode:2;
|
||||
/** m2_exception_id : RO; bitpos: [22:18]; default: 0;
|
||||
* Represents exception id information.
|
||||
*/
|
||||
uint32_t m2_exception_id:5;
|
||||
uint32_t reserved_23:9;
|
||||
};
|
||||
uint32_t val;
|
||||
} hp_mem_apm_m2_exception_info0_reg_t;
|
||||
|
||||
|
||||
/** Group: M2 exception_info1 register */
|
||||
/** Type of m2_exception_info1 register
|
||||
* M2 exception_info1 register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** m2_exception_addr : RO; bitpos: [31:0]; default: 0;
|
||||
* Represents exception addr.
|
||||
*/
|
||||
uint32_t m2_exception_addr:32;
|
||||
};
|
||||
uint32_t val;
|
||||
} hp_mem_apm_m2_exception_info1_reg_t;
|
||||
|
||||
|
||||
/** Group: M3 status register */
|
||||
/** Type of m3_status register
|
||||
* M3 status register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** m3_exception_status : RO; bitpos: [1:0]; default: 0;
|
||||
* Represents exception status.
|
||||
* bit0: 1 represents authority_exception
|
||||
* bit1: 1 represents space_exception
|
||||
*/
|
||||
uint32_t m3_exception_status:2;
|
||||
uint32_t reserved_2:30;
|
||||
};
|
||||
uint32_t val;
|
||||
} hp_mem_apm_m3_status_reg_t;
|
||||
|
||||
|
||||
/** Group: M3 status clear register */
|
||||
/** Type of m3_status_clr register
|
||||
* M3 status clear register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** m3_exception_status_clr : WT; bitpos: [0]; default: 0;
|
||||
* Configures to clear exception status.
|
||||
*/
|
||||
uint32_t m3_exception_status_clr:1;
|
||||
uint32_t reserved_1:31;
|
||||
};
|
||||
uint32_t val;
|
||||
} hp_mem_apm_m3_status_clr_reg_t;
|
||||
|
||||
|
||||
/** Group: M3 exception_info0 register */
|
||||
/** Type of m3_exception_info0 register
|
||||
* M3 exception_info0 register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** m3_exception_region : RO; bitpos: [7:0]; default: 0;
|
||||
* Represents exception region.
|
||||
*/
|
||||
uint32_t m3_exception_region:8;
|
||||
uint32_t reserved_8:8;
|
||||
/** m3_exception_mode : RO; bitpos: [17:16]; default: 0;
|
||||
* Represents exception mode.
|
||||
*/
|
||||
uint32_t m3_exception_mode:2;
|
||||
/** m3_exception_id : RO; bitpos: [22:18]; default: 0;
|
||||
* Represents exception id information.
|
||||
*/
|
||||
uint32_t m3_exception_id:5;
|
||||
uint32_t reserved_23:9;
|
||||
};
|
||||
uint32_t val;
|
||||
} hp_mem_apm_m3_exception_info0_reg_t;
|
||||
|
||||
|
||||
/** Group: M3 exception_info1 register */
|
||||
/** Type of m3_exception_info1 register
|
||||
* M3 exception_info1 register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** m3_exception_addr : RO; bitpos: [31:0]; default: 0;
|
||||
* Represents exception addr.
|
||||
*/
|
||||
uint32_t m3_exception_addr:32;
|
||||
};
|
||||
uint32_t val;
|
||||
} hp_mem_apm_m3_exception_info1_reg_t;
|
||||
|
||||
|
||||
/** Group: M4 status register */
|
||||
/** Type of m4_status register
|
||||
* M4 status register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** m4_exception_status : RO; bitpos: [1:0]; default: 0;
|
||||
* Represents exception status.
|
||||
* bit0: 1 represents authority_exception
|
||||
* bit1: 1 represents space_exception
|
||||
*/
|
||||
uint32_t m4_exception_status:2;
|
||||
uint32_t reserved_2:30;
|
||||
};
|
||||
uint32_t val;
|
||||
} hp_mem_apm_m4_status_reg_t;
|
||||
|
||||
|
||||
/** Group: M4 status clear register */
|
||||
/** Type of m4_status_clr register
|
||||
* M4 status clear register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** m4_exception_status_clr : WT; bitpos: [0]; default: 0;
|
||||
* Configures to clear exception status.
|
||||
*/
|
||||
uint32_t m4_exception_status_clr:1;
|
||||
uint32_t reserved_1:31;
|
||||
};
|
||||
uint32_t val;
|
||||
} hp_mem_apm_m4_status_clr_reg_t;
|
||||
|
||||
|
||||
/** Group: M4 exception_info0 register */
|
||||
/** Type of m4_exception_info0 register
|
||||
* M4 exception_info0 register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** m4_exception_region : RO; bitpos: [7:0]; default: 0;
|
||||
* Represents exception region.
|
||||
*/
|
||||
uint32_t m4_exception_region:8;
|
||||
uint32_t reserved_8:8;
|
||||
/** m4_exception_mode : RO; bitpos: [17:16]; default: 0;
|
||||
* Represents exception mode.
|
||||
*/
|
||||
uint32_t m4_exception_mode:2;
|
||||
/** m4_exception_id : RO; bitpos: [24:18]; default: 0;
|
||||
* Represents exception id information.
|
||||
*/
|
||||
uint32_t m4_exception_id:7;
|
||||
uint32_t reserved_25:7;
|
||||
};
|
||||
uint32_t val;
|
||||
} hp_mem_apm_m4_exception_info0_reg_t;
|
||||
|
||||
|
||||
/** Group: M4 exception_info1 register */
|
||||
/** Type of m4_exception_info1 register
|
||||
* M4 exception_info1 register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** m4_exception_addr : RO; bitpos: [31:0]; default: 0;
|
||||
* Represents exception addr.
|
||||
*/
|
||||
uint32_t m4_exception_addr:32;
|
||||
};
|
||||
uint32_t val;
|
||||
} hp_mem_apm_m4_exception_info1_reg_t;
|
||||
|
||||
|
||||
/** Group: M5 status register */
|
||||
/** Type of m5_status register
|
||||
* M5 status register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** m5_exception_status : RO; bitpos: [1:0]; default: 0;
|
||||
* Represents exception status.
|
||||
* bit0: 1 represents authority_exception
|
||||
* bit1: 1 represents space_exception
|
||||
*/
|
||||
uint32_t m5_exception_status:2;
|
||||
uint32_t reserved_2:30;
|
||||
};
|
||||
uint32_t val;
|
||||
} hp_mem_apm_m5_status_reg_t;
|
||||
|
||||
|
||||
/** Group: M5 status clear register */
|
||||
/** Type of m5_status_clr register
|
||||
* M5 status clear register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** m5_exception_status_clr : WT; bitpos: [0]; default: 0;
|
||||
* Configures to clear exception status.
|
||||
*/
|
||||
uint32_t m5_exception_status_clr:1;
|
||||
uint32_t reserved_1:31;
|
||||
};
|
||||
uint32_t val;
|
||||
} hp_mem_apm_m5_status_clr_reg_t;
|
||||
|
||||
|
||||
/** Group: M5 exception_info0 register */
|
||||
/** Type of m5_exception_info0 register
|
||||
* M5 exception_info0 register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** m5_exception_region : RO; bitpos: [7:0]; default: 0;
|
||||
* Represents exception region.
|
||||
*/
|
||||
uint32_t m5_exception_region:8;
|
||||
uint32_t reserved_8:8;
|
||||
/** m5_exception_mode : RO; bitpos: [17:16]; default: 0;
|
||||
* Represents exception mode.
|
||||
*/
|
||||
uint32_t m5_exception_mode:2;
|
||||
/** m5_exception_id : RO; bitpos: [23:18]; default: 0;
|
||||
* Represents exception id information.
|
||||
*/
|
||||
uint32_t m5_exception_id:6;
|
||||
uint32_t reserved_24:8;
|
||||
};
|
||||
uint32_t val;
|
||||
} hp_mem_apm_m5_exception_info0_reg_t;
|
||||
|
||||
|
||||
/** Group: M5 exception_info1 register */
|
||||
/** Type of m5_exception_info1 register
|
||||
* M5 exception_info1 register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** m5_exception_addr : RO; bitpos: [31:0]; default: 0;
|
||||
* Represents exception addr.
|
||||
*/
|
||||
uint32_t m5_exception_addr:32;
|
||||
};
|
||||
uint32_t val;
|
||||
} hp_mem_apm_m5_exception_info1_reg_t;
|
||||
|
||||
|
||||
/** Group: APM interrupt enable register */
|
||||
/** Type of int_en register
|
||||
* APM interrupt enable register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** m0_apm_int_en : R/W; bitpos: [0]; default: 0;
|
||||
* Configures to enable APM M0 interrupt.
|
||||
* 0: disable
|
||||
* 1: enable
|
||||
*/
|
||||
uint32_t m0_apm_int_en:1;
|
||||
/** m1_apm_int_en : R/W; bitpos: [1]; default: 0;
|
||||
* Configures to enable APM M1 interrupt.
|
||||
* 0: disable
|
||||
* 1: enable
|
||||
*/
|
||||
uint32_t m1_apm_int_en:1;
|
||||
/** m2_apm_int_en : R/W; bitpos: [2]; default: 0;
|
||||
* Configures to enable APM M2 interrupt.
|
||||
* 0: disable
|
||||
* 1: enable
|
||||
*/
|
||||
uint32_t m2_apm_int_en:1;
|
||||
/** m3_apm_int_en : R/W; bitpos: [3]; default: 0;
|
||||
* Configures to enable APM M3 interrupt.
|
||||
* 0: disable
|
||||
* 1: enable
|
||||
*/
|
||||
uint32_t m3_apm_int_en:1;
|
||||
/** m4_apm_int_en : R/W; bitpos: [4]; default: 0;
|
||||
* Configures to enable APM M4 interrupt.
|
||||
* 0: disable
|
||||
* 1: enable
|
||||
*/
|
||||
uint32_t m4_apm_int_en:1;
|
||||
/** m5_apm_int_en : R/W; bitpos: [5]; default: 0;
|
||||
* Configures to enable APM M5 interrupt.
|
||||
* 0: disable
|
||||
* 1: enable
|
||||
*/
|
||||
uint32_t m5_apm_int_en:1;
|
||||
uint32_t reserved_6:26;
|
||||
};
|
||||
uint32_t val;
|
||||
} hp_mem_apm_int_en_reg_t;
|
||||
|
||||
/** Type of bus_err_conf register
|
||||
* APM interrupt enable register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** bus_err_resp_en : R/W; bitpos: [0]; default: 0;
|
||||
* Configures whether return error response to cpu when access blocked
|
||||
* 0: disable error response
|
||||
* 1: enable error response
|
||||
*/
|
||||
uint32_t bus_err_resp_en:1;
|
||||
uint32_t reserved_1:31;
|
||||
};
|
||||
uint32_t val;
|
||||
} hp_mem_apm_bus_err_conf_reg_t;
|
||||
|
||||
|
||||
/** Group: Clock gating register */
|
||||
/** Type of clock_gate register
|
||||
* Clock gating register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** clk_en : R/W; bitpos: [0]; default: 1;
|
||||
* Configures whether to keep the clock always on.
|
||||
* 0: enable automatic clock gating
|
||||
* 1: keep the clock always on
|
||||
*/
|
||||
uint32_t clk_en:1;
|
||||
uint32_t reserved_1:31;
|
||||
};
|
||||
uint32_t val;
|
||||
} hp_mem_apm_clock_gate_reg_t;
|
||||
|
||||
|
||||
/** Group: Version control register */
|
||||
/** Type of date register
|
||||
* Version control register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** date : R/W; bitpos: [27:0]; default: 38822496;
|
||||
* Version control register.
|
||||
*/
|
||||
uint32_t date:28;
|
||||
uint32_t reserved_28:4;
|
||||
};
|
||||
uint32_t val;
|
||||
} hp_mem_apm_date_reg_t;
|
||||
|
||||
|
||||
typedef struct {
|
||||
volatile hp_mem_apm_region_filter_en_reg_t region_filter_en;
|
||||
volatile hp_mem_apm_regionn_addr_start_reg_t region0_addr_start;
|
||||
volatile hp_mem_apm_regionn_addr_end_reg_t region0_addr_end;
|
||||
volatile hp_mem_apm_regionn_attr_reg_t region0_attr;
|
||||
volatile hp_mem_apm_regionn_addr_start_reg_t region1_addr_start;
|
||||
volatile hp_mem_apm_regionn_addr_end_reg_t region1_addr_end;
|
||||
volatile hp_mem_apm_regionn_attr_reg_t region1_attr;
|
||||
volatile hp_mem_apm_regionn_addr_start_reg_t region2_addr_start;
|
||||
volatile hp_mem_apm_regionn_addr_end_reg_t region2_addr_end;
|
||||
volatile hp_mem_apm_regionn_attr_reg_t region2_attr;
|
||||
volatile hp_mem_apm_regionn_addr_start_reg_t region3_addr_start;
|
||||
volatile hp_mem_apm_regionn_addr_end_reg_t region3_addr_end;
|
||||
volatile hp_mem_apm_regionn_attr_reg_t region3_attr;
|
||||
volatile hp_mem_apm_regionn_addr_start_reg_t region4_addr_start;
|
||||
volatile hp_mem_apm_regionn_addr_end_reg_t region4_addr_end;
|
||||
volatile hp_mem_apm_regionn_attr_reg_t region4_attr;
|
||||
volatile hp_mem_apm_regionn_addr_start_reg_t region5_addr_start;
|
||||
volatile hp_mem_apm_regionn_addr_end_reg_t region5_addr_end;
|
||||
volatile hp_mem_apm_regionn_attr_reg_t region5_attr;
|
||||
volatile hp_mem_apm_regionn_addr_start_reg_t region6_addr_start;
|
||||
volatile hp_mem_apm_regionn_addr_end_reg_t region6_addr_end;
|
||||
volatile hp_mem_apm_regionn_attr_reg_t region6_attr;
|
||||
volatile hp_mem_apm_regionn_addr_start_reg_t region7_addr_start;
|
||||
volatile hp_mem_apm_regionn_addr_end_reg_t region7_addr_end;
|
||||
volatile hp_mem_apm_regionn_attr_reg_t region7_attr;
|
||||
uint32_t reserved_064[24];
|
||||
volatile hp_mem_apm_func_ctrl_reg_t func_ctrl;
|
||||
volatile hp_mem_apm_m0_status_reg_t m0_status;
|
||||
volatile hp_mem_apm_m0_status_clr_reg_t m0_status_clr;
|
||||
volatile hp_mem_apm_m0_exception_info0_reg_t m0_exception_info0;
|
||||
volatile hp_mem_apm_m0_exception_info1_reg_t m0_exception_info1;
|
||||
volatile hp_mem_apm_m1_status_reg_t m1_status;
|
||||
volatile hp_mem_apm_m1_status_clr_reg_t m1_status_clr;
|
||||
volatile hp_mem_apm_m1_exception_info0_reg_t m1_exception_info0;
|
||||
volatile hp_mem_apm_m1_exception_info1_reg_t m1_exception_info1;
|
||||
volatile hp_mem_apm_m2_status_reg_t m2_status;
|
||||
volatile hp_mem_apm_m2_status_clr_reg_t m2_status_clr;
|
||||
volatile hp_mem_apm_m2_exception_info0_reg_t m2_exception_info0;
|
||||
volatile hp_mem_apm_m2_exception_info1_reg_t m2_exception_info1;
|
||||
volatile hp_mem_apm_m3_status_reg_t m3_status;
|
||||
volatile hp_mem_apm_m3_status_clr_reg_t m3_status_clr;
|
||||
volatile hp_mem_apm_m3_exception_info0_reg_t m3_exception_info0;
|
||||
volatile hp_mem_apm_m3_exception_info1_reg_t m3_exception_info1;
|
||||
volatile hp_mem_apm_m4_status_reg_t m4_status;
|
||||
volatile hp_mem_apm_m4_status_clr_reg_t m4_status_clr;
|
||||
volatile hp_mem_apm_m4_exception_info0_reg_t m4_exception_info0;
|
||||
volatile hp_mem_apm_m4_exception_info1_reg_t m4_exception_info1;
|
||||
volatile hp_mem_apm_m5_status_reg_t m5_status;
|
||||
volatile hp_mem_apm_m5_status_clr_reg_t m5_status_clr;
|
||||
volatile hp_mem_apm_m5_exception_info0_reg_t m5_exception_info0;
|
||||
volatile hp_mem_apm_m5_exception_info1_reg_t m5_exception_info1;
|
||||
volatile hp_mem_apm_int_en_reg_t int_en;
|
||||
volatile hp_mem_apm_bus_err_conf_reg_t bus_err_conf;
|
||||
uint32_t reserved_130[178];
|
||||
volatile hp_mem_apm_clock_gate_reg_t clock_gate;
|
||||
volatile hp_mem_apm_date_reg_t date;
|
||||
} hp_mem_apm_dev_t;
|
||||
|
||||
|
||||
#ifndef __cplusplus
|
||||
_Static_assert(sizeof(hp_mem_apm_dev_t) == 0x400, "Invalid size of hp_mem_apm_dev_t structure");
|
||||
#endif
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
2862
components/soc/esp32s31/register/soc/hp_peri0_pms_reg.h
Normal file
2862
components/soc/esp32s31/register/soc/hp_peri0_pms_reg.h
Normal file
File diff suppressed because it is too large
Load Diff
2215
components/soc/esp32s31/register/soc/hp_peri0_pms_struct.h
Normal file
2215
components/soc/esp32s31/register/soc/hp_peri0_pms_struct.h
Normal file
File diff suppressed because it is too large
Load Diff
3402
components/soc/esp32s31/register/soc/hp_peri1_pms_reg.h
Normal file
3402
components/soc/esp32s31/register/soc/hp_peri1_pms_reg.h
Normal file
File diff suppressed because it is too large
Load Diff
2609
components/soc/esp32s31/register/soc/hp_peri1_pms_struct.h
Normal file
2609
components/soc/esp32s31/register/soc/hp_peri1_pms_struct.h
Normal file
File diff suppressed because it is too large
Load Diff
4465
components/soc/esp32s31/register/soc/hp_sys_clkrst_reg.h
Normal file
4465
components/soc/esp32s31/register/soc/hp_sys_clkrst_reg.h
Normal file
File diff suppressed because it is too large
Load Diff
3773
components/soc/esp32s31/register/soc/hp_sys_clkrst_struct.h
Normal file
3773
components/soc/esp32s31/register/soc/hp_sys_clkrst_struct.h
Normal file
File diff suppressed because it is too large
Load Diff
2380
components/soc/esp32s31/register/soc/hp_system_reg.h
Normal file
2380
components/soc/esp32s31/register/soc/hp_system_reg.h
Normal file
File diff suppressed because it is too large
Load Diff
2382
components/soc/esp32s31/register/soc/hp_system_struct.h
Normal file
2382
components/soc/esp32s31/register/soc/hp_system_struct.h
Normal file
File diff suppressed because it is too large
Load Diff
230
components/soc/esp32s31/register/soc/huk_reg.h
Normal file
230
components/soc/esp32s31/register/soc/huk_reg.h
Normal file
@@ -0,0 +1,230 @@
|
||||
/**
|
||||
* SPDX-FileCopyrightText: 2025 Espressif Systems (Shanghai) CO LTD
|
||||
*
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
*/
|
||||
#pragma once
|
||||
|
||||
#include <stdint.h>
|
||||
#include "soc/soc.h"
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
/** HUK_CLK_REG register
|
||||
* HUK Generator clock gate control register
|
||||
*/
|
||||
#define HUK_CLK_REG (DR_REG_HUK_BASE + 0x4)
|
||||
/** HUK_CLK_EN : R/W; bitpos: [0]; default: 1;
|
||||
* Write 1 to force on register clock gate.
|
||||
*/
|
||||
#define HUK_CLK_EN (BIT(0))
|
||||
#define HUK_CLK_EN_M (HUK_CLK_EN_V << HUK_CLK_EN_S)
|
||||
#define HUK_CLK_EN_V 0x00000001U
|
||||
#define HUK_CLK_EN_S 0
|
||||
/** HUK_MEM_CG_FORCE_ON : R/W; bitpos: [1]; default: 0;
|
||||
* Write 1 to force on memory clock gate.
|
||||
*/
|
||||
#define HUK_MEM_CG_FORCE_ON (BIT(1))
|
||||
#define HUK_MEM_CG_FORCE_ON_M (HUK_MEM_CG_FORCE_ON_V << HUK_MEM_CG_FORCE_ON_S)
|
||||
#define HUK_MEM_CG_FORCE_ON_V 0x00000001U
|
||||
#define HUK_MEM_CG_FORCE_ON_S 1
|
||||
|
||||
/** HUK_INT_RAW_REG register
|
||||
* HUK Generator interrupt raw register, valid in level.
|
||||
*/
|
||||
#define HUK_INT_RAW_REG (DR_REG_HUK_BASE + 0x8)
|
||||
/** HUK_PREP_DONE_INT_RAW : RO/WTC/SS; bitpos: [0]; default: 0;
|
||||
* The raw interrupt status bit for the huk_prep_done_int interrupt
|
||||
*/
|
||||
#define HUK_PREP_DONE_INT_RAW (BIT(0))
|
||||
#define HUK_PREP_DONE_INT_RAW_M (HUK_PREP_DONE_INT_RAW_V << HUK_PREP_DONE_INT_RAW_S)
|
||||
#define HUK_PREP_DONE_INT_RAW_V 0x00000001U
|
||||
#define HUK_PREP_DONE_INT_RAW_S 0
|
||||
/** HUK_PROC_DONE_INT_RAW : RO/WTC/SS; bitpos: [1]; default: 0;
|
||||
* The raw interrupt status bit for the huk_proc_done_int interrupt
|
||||
*/
|
||||
#define HUK_PROC_DONE_INT_RAW (BIT(1))
|
||||
#define HUK_PROC_DONE_INT_RAW_M (HUK_PROC_DONE_INT_RAW_V << HUK_PROC_DONE_INT_RAW_S)
|
||||
#define HUK_PROC_DONE_INT_RAW_V 0x00000001U
|
||||
#define HUK_PROC_DONE_INT_RAW_S 1
|
||||
/** HUK_POST_DONE_INT_RAW : RO/WTC/SS; bitpos: [2]; default: 0;
|
||||
* The raw interrupt status bit for the huk_post_done_int interrupt
|
||||
*/
|
||||
#define HUK_POST_DONE_INT_RAW (BIT(2))
|
||||
#define HUK_POST_DONE_INT_RAW_M (HUK_POST_DONE_INT_RAW_V << HUK_POST_DONE_INT_RAW_S)
|
||||
#define HUK_POST_DONE_INT_RAW_V 0x00000001U
|
||||
#define HUK_POST_DONE_INT_RAW_S 2
|
||||
|
||||
/** HUK_INT_ST_REG register
|
||||
* HUK Generator interrupt status register.
|
||||
*/
|
||||
#define HUK_INT_ST_REG (DR_REG_HUK_BASE + 0xc)
|
||||
/** HUK_PREP_DONE_INT_ST : RO; bitpos: [0]; default: 0;
|
||||
* The masked interrupt status bit for the huk_prep_done_int interrupt
|
||||
*/
|
||||
#define HUK_PREP_DONE_INT_ST (BIT(0))
|
||||
#define HUK_PREP_DONE_INT_ST_M (HUK_PREP_DONE_INT_ST_V << HUK_PREP_DONE_INT_ST_S)
|
||||
#define HUK_PREP_DONE_INT_ST_V 0x00000001U
|
||||
#define HUK_PREP_DONE_INT_ST_S 0
|
||||
/** HUK_PROC_DONE_INT_ST : RO; bitpos: [1]; default: 0;
|
||||
* The masked interrupt status bit for the huk_proc_done_int interrupt
|
||||
*/
|
||||
#define HUK_PROC_DONE_INT_ST (BIT(1))
|
||||
#define HUK_PROC_DONE_INT_ST_M (HUK_PROC_DONE_INT_ST_V << HUK_PROC_DONE_INT_ST_S)
|
||||
#define HUK_PROC_DONE_INT_ST_V 0x00000001U
|
||||
#define HUK_PROC_DONE_INT_ST_S 1
|
||||
/** HUK_POST_DONE_INT_ST : RO; bitpos: [2]; default: 0;
|
||||
* The masked interrupt status bit for the huk_post_done_int interrupt
|
||||
*/
|
||||
#define HUK_POST_DONE_INT_ST (BIT(2))
|
||||
#define HUK_POST_DONE_INT_ST_M (HUK_POST_DONE_INT_ST_V << HUK_POST_DONE_INT_ST_S)
|
||||
#define HUK_POST_DONE_INT_ST_V 0x00000001U
|
||||
#define HUK_POST_DONE_INT_ST_S 2
|
||||
|
||||
/** HUK_INT_ENA_REG register
|
||||
* HUK Generator interrupt enable register.
|
||||
*/
|
||||
#define HUK_INT_ENA_REG (DR_REG_HUK_BASE + 0x10)
|
||||
/** HUK_PREP_DONE_INT_ENA : R/W; bitpos: [0]; default: 0;
|
||||
* The interrupt enable bit for the huk_prep_done_int interrupt
|
||||
*/
|
||||
#define HUK_PREP_DONE_INT_ENA (BIT(0))
|
||||
#define HUK_PREP_DONE_INT_ENA_M (HUK_PREP_DONE_INT_ENA_V << HUK_PREP_DONE_INT_ENA_S)
|
||||
#define HUK_PREP_DONE_INT_ENA_V 0x00000001U
|
||||
#define HUK_PREP_DONE_INT_ENA_S 0
|
||||
/** HUK_PROC_DONE_INT_ENA : R/W; bitpos: [1]; default: 0;
|
||||
* The interrupt enable bit for the huk_proc_done_int interrupt
|
||||
*/
|
||||
#define HUK_PROC_DONE_INT_ENA (BIT(1))
|
||||
#define HUK_PROC_DONE_INT_ENA_M (HUK_PROC_DONE_INT_ENA_V << HUK_PROC_DONE_INT_ENA_S)
|
||||
#define HUK_PROC_DONE_INT_ENA_V 0x00000001U
|
||||
#define HUK_PROC_DONE_INT_ENA_S 1
|
||||
/** HUK_POST_DONE_INT_ENA : R/W; bitpos: [2]; default: 0;
|
||||
* The interrupt enable bit for the huk_post_done_int interrupt
|
||||
*/
|
||||
#define HUK_POST_DONE_INT_ENA (BIT(2))
|
||||
#define HUK_POST_DONE_INT_ENA_M (HUK_POST_DONE_INT_ENA_V << HUK_POST_DONE_INT_ENA_S)
|
||||
#define HUK_POST_DONE_INT_ENA_V 0x00000001U
|
||||
#define HUK_POST_DONE_INT_ENA_S 2
|
||||
|
||||
/** HUK_INT_CLR_REG register
|
||||
* HUK Generator interrupt clear register.
|
||||
*/
|
||||
#define HUK_INT_CLR_REG (DR_REG_HUK_BASE + 0x14)
|
||||
/** HUK_PREP_DONE_INT_CLR : WT; bitpos: [0]; default: 0;
|
||||
* Set this bit to clear the huk_prep_done_int interrupt
|
||||
*/
|
||||
#define HUK_PREP_DONE_INT_CLR (BIT(0))
|
||||
#define HUK_PREP_DONE_INT_CLR_M (HUK_PREP_DONE_INT_CLR_V << HUK_PREP_DONE_INT_CLR_S)
|
||||
#define HUK_PREP_DONE_INT_CLR_V 0x00000001U
|
||||
#define HUK_PREP_DONE_INT_CLR_S 0
|
||||
/** HUK_PROC_DONE_INT_CLR : WT; bitpos: [1]; default: 0;
|
||||
* Set this bit to clear the huk_proc_done_int interrupt
|
||||
*/
|
||||
#define HUK_PROC_DONE_INT_CLR (BIT(1))
|
||||
#define HUK_PROC_DONE_INT_CLR_M (HUK_PROC_DONE_INT_CLR_V << HUK_PROC_DONE_INT_CLR_S)
|
||||
#define HUK_PROC_DONE_INT_CLR_V 0x00000001U
|
||||
#define HUK_PROC_DONE_INT_CLR_S 1
|
||||
/** HUK_POST_DONE_INT_CLR : WT; bitpos: [2]; default: 0;
|
||||
* Set this bit to clear the huk_post_done_int interrupt
|
||||
*/
|
||||
#define HUK_POST_DONE_INT_CLR (BIT(2))
|
||||
#define HUK_POST_DONE_INT_CLR_M (HUK_POST_DONE_INT_CLR_V << HUK_POST_DONE_INT_CLR_S)
|
||||
#define HUK_POST_DONE_INT_CLR_V 0x00000001U
|
||||
#define HUK_POST_DONE_INT_CLR_S 2
|
||||
|
||||
/** HUK_CONF_REG register
|
||||
* HUK Generator configuration register
|
||||
*/
|
||||
#define HUK_CONF_REG (DR_REG_HUK_BASE + 0x20)
|
||||
/** HUK_MODE : R/W; bitpos: [0]; default: 0;
|
||||
* Set this field to choose the huk process. 1: process huk generate mode. 0: process
|
||||
* huk recovery mode.
|
||||
*/
|
||||
#define HUK_MODE (BIT(0))
|
||||
#define HUK_MODE_M (HUK_MODE_V << HUK_MODE_S)
|
||||
#define HUK_MODE_V 0x00000001U
|
||||
#define HUK_MODE_S 0
|
||||
|
||||
/** HUK_START_REG register
|
||||
* HUK Generator control register
|
||||
*/
|
||||
#define HUK_START_REG (DR_REG_HUK_BASE + 0x24)
|
||||
/** HUK_START : WT; bitpos: [0]; default: 0;
|
||||
* Write 1 to continue HUK Generator operation at LOAD/GAIN state.
|
||||
*/
|
||||
#define HUK_START (BIT(0))
|
||||
#define HUK_START_M (HUK_START_V << HUK_START_S)
|
||||
#define HUK_START_V 0x00000001U
|
||||
#define HUK_START_S 0
|
||||
/** HUK_CONTINUE : WT; bitpos: [1]; default: 0;
|
||||
* Write 1 to start HUK Generator at IDLE state.
|
||||
*/
|
||||
#define HUK_CONTINUE (BIT(1))
|
||||
#define HUK_CONTINUE_M (HUK_CONTINUE_V << HUK_CONTINUE_S)
|
||||
#define HUK_CONTINUE_V 0x00000001U
|
||||
#define HUK_CONTINUE_S 1
|
||||
|
||||
/** HUK_STATE_REG register
|
||||
* HUK Generator state register
|
||||
*/
|
||||
#define HUK_STATE_REG (DR_REG_HUK_BASE + 0x28)
|
||||
/** HUK_STATE : RO; bitpos: [1:0]; default: 0;
|
||||
* The state of HUK Generator. 0: IDLE. 1: LOAD. 2: GAIN. 3: BUSY.
|
||||
*/
|
||||
#define HUK_STATE 0x00000003U
|
||||
#define HUK_STATE_M (HUK_STATE_V << HUK_STATE_S)
|
||||
#define HUK_STATE_V 0x00000003U
|
||||
#define HUK_STATE_S 0
|
||||
|
||||
/** HUK_STATUS_REG register
|
||||
* HUK Generator HUK status register
|
||||
*/
|
||||
#define HUK_STATUS_REG (DR_REG_HUK_BASE + 0x34)
|
||||
/** HUK_STATUS : RO; bitpos: [1:0]; default: 0;
|
||||
* The HUK generation status. 0: HUK is not generated. 1: HUK is generated and valid.
|
||||
* 2: HUK is generated but invalid. 3: reserved.
|
||||
*/
|
||||
#define HUK_STATUS 0x00000003U
|
||||
#define HUK_STATUS_M (HUK_STATUS_V << HUK_STATUS_S)
|
||||
#define HUK_STATUS_V 0x00000003U
|
||||
#define HUK_STATUS_S 0
|
||||
/** HUK_RISK_LEVEL : RO; bitpos: [4:2]; default: 0;
|
||||
* The risk level of HUK. 0-6: the higher the risk level is, the more error bits there
|
||||
* are in the PUF SRAM. 7: Error Level, HUK is invalid.
|
||||
*/
|
||||
#define HUK_RISK_LEVEL 0x00000007U
|
||||
#define HUK_RISK_LEVEL_M (HUK_RISK_LEVEL_V << HUK_RISK_LEVEL_S)
|
||||
#define HUK_RISK_LEVEL_V 0x00000007U
|
||||
#define HUK_RISK_LEVEL_S 2
|
||||
/** HUK_UPDATE_REQ : RO; bitpos: [5]; default: 0;
|
||||
* The update request of HUK info. 0: User can update HUK info according to the risk
|
||||
* level. 1: The HUK info is expired, and user need to update it.
|
||||
*/
|
||||
#define HUK_UPDATE_REQ (BIT(5))
|
||||
#define HUK_UPDATE_REQ_M (HUK_UPDATE_REQ_V << HUK_UPDATE_REQ_S)
|
||||
#define HUK_UPDATE_REQ_V 0x00000001U
|
||||
#define HUK_UPDATE_REQ_S 5
|
||||
|
||||
/** HUK_DATE_REG register
|
||||
* Version control register
|
||||
*/
|
||||
#define HUK_DATE_REG (DR_REG_HUK_BASE + 0xfc)
|
||||
/** HUK_DATE : R/W; bitpos: [27:0]; default: 37765232;
|
||||
* HUK Generator version control register.
|
||||
*/
|
||||
#define HUK_DATE 0x0FFFFFFFU
|
||||
#define HUK_DATE_M (HUK_DATE_V << HUK_DATE_S)
|
||||
#define HUK_DATE_V 0x0FFFFFFFU
|
||||
#define HUK_DATE_S 0
|
||||
|
||||
/** HUK_INFO_MEM register
|
||||
* The memory that stores HUK info.
|
||||
*/
|
||||
#define HUK_INFO_MEM (DR_REG_HUK_BASE + 0x100)
|
||||
#define HUK_INFO_MEM_SIZE_BYTES 384
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
246
components/soc/esp32s31/register/soc/huk_struct.h
Normal file
246
components/soc/esp32s31/register/soc/huk_struct.h
Normal file
@@ -0,0 +1,246 @@
|
||||
/**
|
||||
* SPDX-FileCopyrightText: 2025 Espressif Systems (Shanghai) CO LTD
|
||||
*
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
*/
|
||||
#pragma once
|
||||
|
||||
#include <stdint.h>
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
/** Group: Memory data */
|
||||
|
||||
/** Group: Clock gate register */
|
||||
/** Type of clk register
|
||||
* HUK Generator clock gate control register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** clk_en : R/W; bitpos: [0]; default: 1;
|
||||
* Write 1 to force on register clock gate.
|
||||
*/
|
||||
uint32_t clk_en:1;
|
||||
/** mem_cg_force_on : R/W; bitpos: [1]; default: 0;
|
||||
* Write 1 to force on memory clock gate.
|
||||
*/
|
||||
uint32_t mem_cg_force_on:1;
|
||||
uint32_t reserved_2:30;
|
||||
};
|
||||
uint32_t val;
|
||||
} huk_clk_reg_t;
|
||||
|
||||
|
||||
/** Group: Interrupt registers */
|
||||
/** Type of int_raw register
|
||||
* HUK Generator interrupt raw register, valid in level.
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** prep_done_int_raw : RO/WTC/SS; bitpos: [0]; default: 0;
|
||||
* The raw interrupt status bit for the huk_prep_done_int interrupt
|
||||
*/
|
||||
uint32_t prep_done_int_raw:1;
|
||||
/** proc_done_int_raw : RO/WTC/SS; bitpos: [1]; default: 0;
|
||||
* The raw interrupt status bit for the huk_proc_done_int interrupt
|
||||
*/
|
||||
uint32_t proc_done_int_raw:1;
|
||||
/** post_done_int_raw : RO/WTC/SS; bitpos: [2]; default: 0;
|
||||
* The raw interrupt status bit for the huk_post_done_int interrupt
|
||||
*/
|
||||
uint32_t post_done_int_raw:1;
|
||||
uint32_t reserved_3:29;
|
||||
};
|
||||
uint32_t val;
|
||||
} huk_int_raw_reg_t;
|
||||
|
||||
/** Type of int_st register
|
||||
* HUK Generator interrupt status register.
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** prep_done_int_st : RO; bitpos: [0]; default: 0;
|
||||
* The masked interrupt status bit for the huk_prep_done_int interrupt
|
||||
*/
|
||||
uint32_t prep_done_int_st:1;
|
||||
/** proc_done_int_st : RO; bitpos: [1]; default: 0;
|
||||
* The masked interrupt status bit for the huk_proc_done_int interrupt
|
||||
*/
|
||||
uint32_t proc_done_int_st:1;
|
||||
/** post_done_int_st : RO; bitpos: [2]; default: 0;
|
||||
* The masked interrupt status bit for the huk_post_done_int interrupt
|
||||
*/
|
||||
uint32_t post_done_int_st:1;
|
||||
uint32_t reserved_3:29;
|
||||
};
|
||||
uint32_t val;
|
||||
} huk_int_st_reg_t;
|
||||
|
||||
/** Type of int_ena register
|
||||
* HUK Generator interrupt enable register.
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** prep_done_int_ena : R/W; bitpos: [0]; default: 0;
|
||||
* The interrupt enable bit for the huk_prep_done_int interrupt
|
||||
*/
|
||||
uint32_t prep_done_int_ena:1;
|
||||
/** proc_done_int_ena : R/W; bitpos: [1]; default: 0;
|
||||
* The interrupt enable bit for the huk_proc_done_int interrupt
|
||||
*/
|
||||
uint32_t proc_done_int_ena:1;
|
||||
/** post_done_int_ena : R/W; bitpos: [2]; default: 0;
|
||||
* The interrupt enable bit for the huk_post_done_int interrupt
|
||||
*/
|
||||
uint32_t post_done_int_ena:1;
|
||||
uint32_t reserved_3:29;
|
||||
};
|
||||
uint32_t val;
|
||||
} huk_int_ena_reg_t;
|
||||
|
||||
/** Type of int_clr register
|
||||
* HUK Generator interrupt clear register.
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** prep_done_int_clr : WT; bitpos: [0]; default: 0;
|
||||
* Set this bit to clear the huk_prep_done_int interrupt
|
||||
*/
|
||||
uint32_t prep_done_int_clr:1;
|
||||
/** proc_done_int_clr : WT; bitpos: [1]; default: 0;
|
||||
* Set this bit to clear the huk_proc_done_int interrupt
|
||||
*/
|
||||
uint32_t proc_done_int_clr:1;
|
||||
/** post_done_int_clr : WT; bitpos: [2]; default: 0;
|
||||
* Set this bit to clear the huk_post_done_int interrupt
|
||||
*/
|
||||
uint32_t post_done_int_clr:1;
|
||||
uint32_t reserved_3:29;
|
||||
};
|
||||
uint32_t val;
|
||||
} huk_int_clr_reg_t;
|
||||
|
||||
|
||||
/** Group: Configuration registers */
|
||||
/** Type of conf register
|
||||
* HUK Generator configuration register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** mode : R/W; bitpos: [0]; default: 0;
|
||||
* Set this field to choose the huk process. 1: process huk generate mode. 0: process
|
||||
* huk recovery mode.
|
||||
*/
|
||||
uint32_t mode:1;
|
||||
uint32_t reserved_1:31;
|
||||
};
|
||||
uint32_t val;
|
||||
} huk_conf_reg_t;
|
||||
|
||||
|
||||
/** Group: Control registers */
|
||||
/** Type of start register
|
||||
* HUK Generator control register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** start : WT; bitpos: [0]; default: 0;
|
||||
* Write 1 to continue HUK Generator operation at LOAD/GAIN state.
|
||||
*/
|
||||
uint32_t start:1;
|
||||
/** continue : WT; bitpos: [1]; default: 0;
|
||||
* Write 1 to start HUK Generator at IDLE state.
|
||||
*/
|
||||
uint32_t continue:1;
|
||||
uint32_t reserved_2:30;
|
||||
};
|
||||
uint32_t val;
|
||||
} huk_start_reg_t;
|
||||
|
||||
|
||||
/** Group: State registers */
|
||||
/** Type of state register
|
||||
* HUK Generator state register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** state : RO; bitpos: [1:0]; default: 0;
|
||||
* The state of HUK Generator. 0: IDLE. 1: LOAD. 2: GAIN. 3: BUSY.
|
||||
*/
|
||||
uint32_t state:2;
|
||||
uint32_t reserved_2:30;
|
||||
};
|
||||
uint32_t val;
|
||||
} huk_state_reg_t;
|
||||
|
||||
|
||||
/** Group: Result registers */
|
||||
/** Type of status register
|
||||
* HUK Generator HUK status register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** status : RO; bitpos: [1:0]; default: 0;
|
||||
* The HUK generation status. 0: HUK is not generated. 1: HUK is generated and valid.
|
||||
* 2: HUK is generated but invalid. 3: reserved.
|
||||
*/
|
||||
uint32_t status:2;
|
||||
/** risk_level : RO; bitpos: [4:2]; default: 0;
|
||||
* The risk level of HUK. 0-6: the higher the risk level is, the more error bits there
|
||||
* are in the PUF SRAM. 7: Error Level, HUK is invalid.
|
||||
*/
|
||||
uint32_t risk_level:3;
|
||||
/** update_req : RO; bitpos: [5]; default: 0;
|
||||
* The update request of HUK info. 0: User can update HUK info according to the risk
|
||||
* level. 1: The HUK info is expired, and user need to update it.
|
||||
*/
|
||||
uint32_t update_req:1;
|
||||
uint32_t reserved_6:26;
|
||||
};
|
||||
uint32_t val;
|
||||
} huk_status_reg_t;
|
||||
|
||||
|
||||
/** Group: Version register */
|
||||
/** Type of date register
|
||||
* Version control register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** date : R/W; bitpos: [27:0]; default: 37765232;
|
||||
* HUK Generator version control register.
|
||||
*/
|
||||
uint32_t date:28;
|
||||
uint32_t reserved_28:4;
|
||||
};
|
||||
uint32_t val;
|
||||
} huk_date_reg_t;
|
||||
|
||||
|
||||
typedef struct {
|
||||
uint32_t reserved_000;
|
||||
volatile huk_clk_reg_t clk;
|
||||
volatile huk_int_raw_reg_t int_raw;
|
||||
volatile huk_int_st_reg_t int_st;
|
||||
volatile huk_int_ena_reg_t int_ena;
|
||||
volatile huk_int_clr_reg_t int_clr;
|
||||
uint32_t reserved_018[2];
|
||||
volatile huk_conf_reg_t conf;
|
||||
volatile huk_start_reg_t start;
|
||||
volatile huk_state_reg_t state;
|
||||
uint32_t reserved_02c[2];
|
||||
volatile huk_status_reg_t status;
|
||||
uint32_t reserved_038[49];
|
||||
volatile huk_date_reg_t date;
|
||||
volatile uint32_t info[96];
|
||||
} huk_dev_t;
|
||||
|
||||
|
||||
#ifndef __cplusplus
|
||||
_Static_assert(sizeof(huk_dev_t) == 0x280, "Invalid size of huk_dev_t structure");
|
||||
#endif
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
1478
components/soc/esp32s31/register/soc/i2c_reg.h
Normal file
1478
components/soc/esp32s31/register/soc/i2c_reg.h
Normal file
File diff suppressed because it is too large
Load Diff
1233
components/soc/esp32s31/register/soc/i2c_struct.h
Normal file
1233
components/soc/esp32s31/register/soc/i2c_struct.h
Normal file
File diff suppressed because it is too large
Load Diff
1594
components/soc/esp32s31/register/soc/i2s_reg.h
Normal file
1594
components/soc/esp32s31/register/soc/i2s_reg.h
Normal file
File diff suppressed because it is too large
Load Diff
1292
components/soc/esp32s31/register/soc/i2s_struct.h
Normal file
1292
components/soc/esp32s31/register/soc/i2s_struct.h
Normal file
File diff suppressed because it is too large
Load Diff
2790
components/soc/esp32s31/register/soc/icm_sys_axi_ic_reg.h
Normal file
2790
components/soc/esp32s31/register/soc/icm_sys_axi_ic_reg.h
Normal file
File diff suppressed because it is too large
Load Diff
3432
components/soc/esp32s31/register/soc/icm_sys_axi_ic_struct.h
Normal file
3432
components/soc/esp32s31/register/soc/icm_sys_axi_ic_struct.h
Normal file
File diff suppressed because it is too large
Load Diff
134
components/soc/esp32s31/register/soc/icm_sys_reg.h
Normal file
134
components/soc/esp32s31/register/soc/icm_sys_reg.h
Normal file
@@ -0,0 +1,134 @@
|
||||
/**
|
||||
* SPDX-FileCopyrightText: 2025 Espressif Systems (Shanghai) CO LTD
|
||||
*
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
*/
|
||||
#pragma once
|
||||
|
||||
#include <stdint.h>
|
||||
#include "soc/soc.h"
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
/** ICM_VER_DATE_REG register
|
||||
* NA
|
||||
*/
|
||||
#define ICM_VER_DATE_REG (DR_REG_ICM_BASE + 0x0)
|
||||
/** ICM_REG_VER_DATE : R/W; bitpos: [31:0]; default: 539296517;
|
||||
* NA
|
||||
*/
|
||||
#define ICM_REG_VER_DATE 0xFFFFFFFFU
|
||||
#define ICM_REG_VER_DATE_M (ICM_REG_VER_DATE_V << ICM_REG_VER_DATE_S)
|
||||
#define ICM_REG_VER_DATE_V 0xFFFFFFFFU
|
||||
#define ICM_REG_VER_DATE_S 0
|
||||
|
||||
/** ICM_CLK_EN_REG register
|
||||
* NA
|
||||
*/
|
||||
#define ICM_CLK_EN_REG (DR_REG_ICM_BASE + 0x4)
|
||||
/** ICM_REG_CLK_EN : R/W; bitpos: [0]; default: 0;
|
||||
* NA
|
||||
*/
|
||||
#define ICM_REG_CLK_EN (BIT(0))
|
||||
#define ICM_REG_CLK_EN_M (ICM_REG_CLK_EN_V << ICM_REG_CLK_EN_S)
|
||||
#define ICM_REG_CLK_EN_V 0x00000001U
|
||||
#define ICM_REG_CLK_EN_S 0
|
||||
|
||||
/** ICM_MST_ARQOS_REG0_REG register
|
||||
* NA
|
||||
*/
|
||||
#define ICM_MST_ARQOS_REG0_REG (DR_REG_ICM_BASE + 0x28)
|
||||
/** ICM_REG_CPU_ARQOS : R/W; bitpos: [3:0]; default: 0;
|
||||
* NA
|
||||
*/
|
||||
#define ICM_REG_CPU_ARQOS 0x0000000FU
|
||||
#define ICM_REG_CPU_ARQOS_M (ICM_REG_CPU_ARQOS_V << ICM_REG_CPU_ARQOS_S)
|
||||
#define ICM_REG_CPU_ARQOS_V 0x0000000FU
|
||||
#define ICM_REG_CPU_ARQOS_S 0
|
||||
/** ICM_REG_CACHE_ARQOS : R/W; bitpos: [7:4]; default: 0;
|
||||
* NA
|
||||
*/
|
||||
#define ICM_REG_CACHE_ARQOS 0x0000000FU
|
||||
#define ICM_REG_CACHE_ARQOS_M (ICM_REG_CACHE_ARQOS_V << ICM_REG_CACHE_ARQOS_S)
|
||||
#define ICM_REG_CACHE_ARQOS_V 0x0000000FU
|
||||
#define ICM_REG_CACHE_ARQOS_S 4
|
||||
/** ICM_REG_DMA2D_ARQOS : R/W; bitpos: [11:8]; default: 0;
|
||||
* NA
|
||||
*/
|
||||
#define ICM_REG_DMA2D_ARQOS 0x0000000FU
|
||||
#define ICM_REG_DMA2D_ARQOS_M (ICM_REG_DMA2D_ARQOS_V << ICM_REG_DMA2D_ARQOS_S)
|
||||
#define ICM_REG_DMA2D_ARQOS_V 0x0000000FU
|
||||
#define ICM_REG_DMA2D_ARQOS_S 8
|
||||
/** ICM_REG_AXI_PDMA_INT_ARQOS : R/W; bitpos: [15:12]; default: 0;
|
||||
* NA
|
||||
*/
|
||||
#define ICM_REG_AXI_PDMA_INT_ARQOS 0x0000000FU
|
||||
#define ICM_REG_AXI_PDMA_INT_ARQOS_M (ICM_REG_AXI_PDMA_INT_ARQOS_V << ICM_REG_AXI_PDMA_INT_ARQOS_S)
|
||||
#define ICM_REG_AXI_PDMA_INT_ARQOS_V 0x0000000FU
|
||||
#define ICM_REG_AXI_PDMA_INT_ARQOS_S 12
|
||||
/** ICM_REG_GMAC_ARQOS : R/W; bitpos: [19:16]; default: 0;
|
||||
* NA
|
||||
*/
|
||||
#define ICM_REG_GMAC_ARQOS 0x0000000FU
|
||||
#define ICM_REG_GMAC_ARQOS_M (ICM_REG_GMAC_ARQOS_V << ICM_REG_GMAC_ARQOS_S)
|
||||
#define ICM_REG_GMAC_ARQOS_V 0x0000000FU
|
||||
#define ICM_REG_GMAC_ARQOS_S 16
|
||||
/** ICM_REG_AXI_SDMMC_INT_ARQOS : R/W; bitpos: [23:20]; default: 0;
|
||||
* NA
|
||||
*/
|
||||
#define ICM_REG_AXI_SDMMC_INT_ARQOS 0x0000000FU
|
||||
#define ICM_REG_AXI_SDMMC_INT_ARQOS_M (ICM_REG_AXI_SDMMC_INT_ARQOS_V << ICM_REG_AXI_SDMMC_INT_ARQOS_S)
|
||||
#define ICM_REG_AXI_SDMMC_INT_ARQOS_V 0x0000000FU
|
||||
#define ICM_REG_AXI_SDMMC_INT_ARQOS_S 20
|
||||
|
||||
/** ICM_MST_AWQOS_REG0_REG register
|
||||
* NA
|
||||
*/
|
||||
#define ICM_MST_AWQOS_REG0_REG (DR_REG_ICM_BASE + 0x30)
|
||||
/** ICM_REG_CPU_AWQOS : R/W; bitpos: [3:0]; default: 0;
|
||||
* NA
|
||||
*/
|
||||
#define ICM_REG_CPU_AWQOS 0x0000000FU
|
||||
#define ICM_REG_CPU_AWQOS_M (ICM_REG_CPU_AWQOS_V << ICM_REG_CPU_AWQOS_S)
|
||||
#define ICM_REG_CPU_AWQOS_V 0x0000000FU
|
||||
#define ICM_REG_CPU_AWQOS_S 0
|
||||
/** ICM_REG_CACHE_AWQOS : R/W; bitpos: [7:4]; default: 0;
|
||||
* NA
|
||||
*/
|
||||
#define ICM_REG_CACHE_AWQOS 0x0000000FU
|
||||
#define ICM_REG_CACHE_AWQOS_M (ICM_REG_CACHE_AWQOS_V << ICM_REG_CACHE_AWQOS_S)
|
||||
#define ICM_REG_CACHE_AWQOS_V 0x0000000FU
|
||||
#define ICM_REG_CACHE_AWQOS_S 4
|
||||
/** ICM_REG_DMA2D_AWQOS : R/W; bitpos: [11:8]; default: 0;
|
||||
* NA
|
||||
*/
|
||||
#define ICM_REG_DMA2D_AWQOS 0x0000000FU
|
||||
#define ICM_REG_DMA2D_AWQOS_M (ICM_REG_DMA2D_AWQOS_V << ICM_REG_DMA2D_AWQOS_S)
|
||||
#define ICM_REG_DMA2D_AWQOS_V 0x0000000FU
|
||||
#define ICM_REG_DMA2D_AWQOS_S 8
|
||||
/** ICM_REG_PDMA_INT_AWQOS : R/W; bitpos: [15:12]; default: 0;
|
||||
* NA
|
||||
*/
|
||||
#define ICM_REG_PDMA_INT_AWQOS 0x0000000FU
|
||||
#define ICM_REG_PDMA_INT_AWQOS_M (ICM_REG_PDMA_INT_AWQOS_V << ICM_REG_PDMA_INT_AWQOS_S)
|
||||
#define ICM_REG_PDMA_INT_AWQOS_V 0x0000000FU
|
||||
#define ICM_REG_PDMA_INT_AWQOS_S 12
|
||||
/** ICM_REG_GMAC_AWQOS : R/W; bitpos: [19:16]; default: 0;
|
||||
* NA
|
||||
*/
|
||||
#define ICM_REG_GMAC_AWQOS 0x0000000FU
|
||||
#define ICM_REG_GMAC_AWQOS_M (ICM_REG_GMAC_AWQOS_V << ICM_REG_GMAC_AWQOS_S)
|
||||
#define ICM_REG_GMAC_AWQOS_V 0x0000000FU
|
||||
#define ICM_REG_GMAC_AWQOS_S 16
|
||||
/** ICM_REG_AXI_SDMMC_INT_AWQOS : R/W; bitpos: [23:20]; default: 0;
|
||||
* NA
|
||||
*/
|
||||
#define ICM_REG_AXI_SDMMC_INT_AWQOS 0x0000000FU
|
||||
#define ICM_REG_AXI_SDMMC_INT_AWQOS_M (ICM_REG_AXI_SDMMC_INT_AWQOS_V << ICM_REG_AXI_SDMMC_INT_AWQOS_S)
|
||||
#define ICM_REG_AXI_SDMMC_INT_AWQOS_V 0x0000000FU
|
||||
#define ICM_REG_AXI_SDMMC_INT_AWQOS_S 20
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
132
components/soc/esp32s31/register/soc/icm_sys_struct.h
Normal file
132
components/soc/esp32s31/register/soc/icm_sys_struct.h
Normal file
@@ -0,0 +1,132 @@
|
||||
/**
|
||||
* SPDX-FileCopyrightText: 2025 Espressif Systems (Shanghai) CO LTD
|
||||
*
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
*/
|
||||
#pragma once
|
||||
|
||||
#include <stdint.h>
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
/** Group: ICM VER DATE REG */
|
||||
/** Type of ver_date register
|
||||
* NA
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** reg_ver_date : R/W; bitpos: [31:0]; default: 539296517;
|
||||
* NA
|
||||
*/
|
||||
uint32_t reg_ver_date:32;
|
||||
};
|
||||
uint32_t val;
|
||||
} icm_ver_date_reg_t;
|
||||
|
||||
|
||||
/** Group: ICM CLK EN REG */
|
||||
/** Type of clk_en register
|
||||
* NA
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** reg_clk_en : R/W; bitpos: [0]; default: 0;
|
||||
* NA
|
||||
*/
|
||||
uint32_t reg_clk_en:1;
|
||||
uint32_t reserved_1:31;
|
||||
};
|
||||
uint32_t val;
|
||||
} icm_clk_en_reg_t;
|
||||
|
||||
|
||||
/** Group: ICM MST ARQOS REG0 REG */
|
||||
/** Type of mst_arqos_reg0 register
|
||||
* NA
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** reg_cpu_arqos : R/W; bitpos: [3:0]; default: 0;
|
||||
* NA
|
||||
*/
|
||||
uint32_t reg_cpu_arqos:4;
|
||||
/** reg_cache_arqos : R/W; bitpos: [7:4]; default: 0;
|
||||
* NA
|
||||
*/
|
||||
uint32_t reg_cache_arqos:4;
|
||||
/** reg_dma2d_arqos : R/W; bitpos: [11:8]; default: 0;
|
||||
* NA
|
||||
*/
|
||||
uint32_t reg_dma2d_arqos:4;
|
||||
/** reg_axi_pdma_int_arqos : R/W; bitpos: [15:12]; default: 0;
|
||||
* NA
|
||||
*/
|
||||
uint32_t reg_axi_pdma_int_arqos:4;
|
||||
/** reg_gmac_arqos : R/W; bitpos: [19:16]; default: 0;
|
||||
* NA
|
||||
*/
|
||||
uint32_t reg_gmac_arqos:4;
|
||||
/** reg_axi_sdmmc_int_arqos : R/W; bitpos: [23:20]; default: 0;
|
||||
* NA
|
||||
*/
|
||||
uint32_t reg_axi_sdmmc_int_arqos:4;
|
||||
uint32_t reserved_24:8;
|
||||
};
|
||||
uint32_t val;
|
||||
} icm_mst_arqos_reg0_reg_t;
|
||||
|
||||
|
||||
/** Group: ICM MST AWQOS REG0 REG */
|
||||
/** Type of mst_awqos_reg0 register
|
||||
* NA
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** reg_cpu_awqos : R/W; bitpos: [3:0]; default: 0;
|
||||
* NA
|
||||
*/
|
||||
uint32_t reg_cpu_awqos:4;
|
||||
/** reg_cache_awqos : R/W; bitpos: [7:4]; default: 0;
|
||||
* NA
|
||||
*/
|
||||
uint32_t reg_cache_awqos:4;
|
||||
/** reg_dma2d_awqos : R/W; bitpos: [11:8]; default: 0;
|
||||
* NA
|
||||
*/
|
||||
uint32_t reg_dma2d_awqos:4;
|
||||
/** reg_pdma_int_awqos : R/W; bitpos: [15:12]; default: 0;
|
||||
* NA
|
||||
*/
|
||||
uint32_t reg_pdma_int_awqos:4;
|
||||
/** reg_gmac_awqos : R/W; bitpos: [19:16]; default: 0;
|
||||
* NA
|
||||
*/
|
||||
uint32_t reg_gmac_awqos:4;
|
||||
/** reg_axi_sdmmc_int_awqos : R/W; bitpos: [23:20]; default: 0;
|
||||
* NA
|
||||
*/
|
||||
uint32_t reg_axi_sdmmc_int_awqos:4;
|
||||
uint32_t reserved_24:8;
|
||||
};
|
||||
uint32_t val;
|
||||
} icm_mst_awqos_reg0_reg_t;
|
||||
|
||||
|
||||
typedef struct {
|
||||
volatile icm_ver_date_reg_t ver_date;
|
||||
volatile icm_clk_en_reg_t clk_en;
|
||||
uint32_t reserved_008[8];
|
||||
volatile icm_mst_arqos_reg0_reg_t mst_arqos_reg0;
|
||||
uint32_t reserved_02c;
|
||||
volatile icm_mst_awqos_reg0_reg_t mst_awqos_reg0;
|
||||
} icm_dev_t;
|
||||
|
||||
|
||||
#ifndef __cplusplus
|
||||
_Static_assert(sizeof(icm_dev_t) == 0x34, "Invalid size of icm_dev_t structure");
|
||||
#endif
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
3925
components/soc/esp32s31/register/soc/interrupt_core0_reg.h
Normal file
3925
components/soc/esp32s31/register/soc/interrupt_core0_reg.h
Normal file
File diff suppressed because it is too large
Load Diff
4153
components/soc/esp32s31/register/soc/interrupt_core0_struct.h
Normal file
4153
components/soc/esp32s31/register/soc/interrupt_core0_struct.h
Normal file
File diff suppressed because it is too large
Load Diff
3925
components/soc/esp32s31/register/soc/interrupt_core1_reg.h
Normal file
3925
components/soc/esp32s31/register/soc/interrupt_core1_reg.h
Normal file
File diff suppressed because it is too large
Load Diff
4153
components/soc/esp32s31/register/soc/interrupt_core1_struct.h
Normal file
4153
components/soc/esp32s31/register/soc/interrupt_core1_struct.h
Normal file
File diff suppressed because it is too large
Load Diff
516
components/soc/esp32s31/register/soc/io_mux_reg.h
Normal file
516
components/soc/esp32s31/register/soc/io_mux_reg.h
Normal file
@@ -0,0 +1,516 @@
|
||||
/*
|
||||
* SPDX-FileCopyrightText: 2025 Espressif Systems (Shanghai) CO LTD
|
||||
*
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
*/
|
||||
|
||||
#pragma once
|
||||
#include "soc/soc.h"
|
||||
|
||||
/* The following are the bit fields for PERIPHS_IO_MUX_x_U registers */
|
||||
/* Output enable in sleep mode */
|
||||
#define SLP_OE (BIT(0))
|
||||
#define SLP_OE_M (BIT(0))
|
||||
#define SLP_OE_V 1
|
||||
#define SLP_OE_S 0
|
||||
/* Pin used for wakeup from sleep */
|
||||
#define SLP_SEL (BIT(1))
|
||||
#define SLP_SEL_M (BIT(1))
|
||||
#define SLP_SEL_V 1
|
||||
#define SLP_SEL_S 1
|
||||
/* Pulldown enable in sleep mode */
|
||||
#define SLP_PD (BIT(2))
|
||||
#define SLP_PD_M (BIT(2))
|
||||
#define SLP_PD_V 1
|
||||
#define SLP_PD_S 2
|
||||
/* Pullup enable in sleep mode */
|
||||
#define SLP_PU (BIT(3))
|
||||
#define SLP_PU_M (BIT(3))
|
||||
#define SLP_PU_V 1
|
||||
#define SLP_PU_S 3
|
||||
/* Input enable in sleep mode */
|
||||
#define SLP_IE (BIT(4))
|
||||
#define SLP_IE_M (BIT(4))
|
||||
#define SLP_IE_V 1
|
||||
#define SLP_IE_S 4
|
||||
/* Drive strength in sleep mode */
|
||||
#define SLP_DRV 0x3
|
||||
#define SLP_DRV_M (SLP_DRV_V << SLP_DRV_S)
|
||||
#define SLP_DRV_V 0x3
|
||||
#define SLP_DRV_S 5
|
||||
/* Pulldown enable */
|
||||
#define FUN_PD (BIT(7))
|
||||
#define FUN_PD_M (BIT(7))
|
||||
#define FUN_PD_V 1
|
||||
#define FUN_PD_S 7
|
||||
/* Pullup enable */
|
||||
#define FUN_PU (BIT(8))
|
||||
#define FUN_PU_M (BIT(8))
|
||||
#define FUN_PU_V 1
|
||||
#define FUN_PU_S 8
|
||||
/* Input enable */
|
||||
#define FUN_IE (BIT(9))
|
||||
#define FUN_IE_M (FUN_IE_V << FUN_IE_S)
|
||||
#define FUN_IE_V 1
|
||||
#define FUN_IE_S 9
|
||||
/* Drive strength */
|
||||
#define FUN_DRV 0x3
|
||||
#define FUN_DRV_M (FUN_DRV_V << FUN_DRV_S)
|
||||
#define FUN_DRV_V 0x3
|
||||
#define FUN_DRV_S 10
|
||||
/* Function select (possible values are defined for each pin as FUNC_pinname_function below) */
|
||||
#define MCU_SEL 0x7
|
||||
#define MCU_SEL_M (MCU_SEL_V << MCU_SEL_S)
|
||||
#define MCU_SEL_V 0x7
|
||||
#define MCU_SEL_S 12
|
||||
|
||||
#define PIN_INPUT_ENABLE(PIN_NAME) SET_PERI_REG_MASK(PIN_NAME,FUN_IE)
|
||||
#define PIN_INPUT_DISABLE(PIN_NAME) CLEAR_PERI_REG_MASK(PIN_NAME,FUN_IE)
|
||||
#define PIN_SET_DRV(PIN_NAME, drv) REG_SET_FIELD(PIN_NAME, FUN_DRV, (drv));
|
||||
#define PIN_PULLUP_DIS(PIN_NAME) REG_CLR_BIT(PIN_NAME, FUN_PU)
|
||||
#define PIN_PULLUP_EN(PIN_NAME) REG_SET_BIT(PIN_NAME, FUN_PU)
|
||||
#define PIN_PULLDWN_DIS(PIN_NAME) REG_CLR_BIT(PIN_NAME, FUN_PD)
|
||||
#define PIN_PULLDWN_EN(PIN_NAME) REG_SET_BIT(PIN_NAME, FUN_PD)
|
||||
#define PIN_FUNC_SELECT(PIN_NAME, FUNC) REG_SET_FIELD(PIN_NAME, MCU_SEL, FUNC)
|
||||
|
||||
#define IO_MUX_GPIO0_REG PERIPHS_IO_MUX_U_XTAL32K_HYS_P
|
||||
#define IO_MUX_GPIO1_REG PERIPHS_IO_MUX_U_XTAL32K_HYS_N
|
||||
#define IO_MUX_GPIO2_REG PERIPHS_IO_MUX_U_GPIO2
|
||||
#define IO_MUX_GPIO3_REG PERIPHS_IO_MUX_U_GPIO3
|
||||
#define IO_MUX_GPIO4_REG PERIPHS_IO_MUX_U_GPIO4
|
||||
#define IO_MUX_GPIO5_REG PERIPHS_IO_MUX_U_GPIO5
|
||||
#define IO_MUX_GPIO6_REG PERIPHS_IO_MUX_U_TOUCH_GPIO6
|
||||
#define IO_MUX_GPIO7_REG PERIPHS_IO_MUX_U_TOUCH_GPIO7
|
||||
#define IO_MUX_GPIO8_REG PERIPHS_IO_MUX_U_TOUCH_GPIO8
|
||||
#define IO_MUX_GPIO9_REG PERIPHS_IO_MUX_U_TOUCH_GPIO9
|
||||
#define IO_MUX_GPIO10_REG PERIPHS_IO_MUX_U_TOUCH_GPIO10
|
||||
#define IO_MUX_GPIO11_REG PERIPHS_IO_MUX_U_TOUCH_GPIO11
|
||||
#define IO_MUX_GPIO12_REG PERIPHS_IO_MUX_U_TOUCH_GPIO12
|
||||
#define IO_MUX_GPIO13_REG PERIPHS_IO_MUX_U_TOUCH_GPIO13
|
||||
#define IO_MUX_GPIO14_REG PERIPHS_IO_MUX_U_TOUCH_GPIO14
|
||||
#define IO_MUX_GPIO15_REG PERIPHS_IO_MUX_U_TOUCH_GPIO15
|
||||
#define IO_MUX_GPIO16_REG PERIPHS_IO_MUX_U_TOUCH_GPIO16
|
||||
#define IO_MUX_GPIO17_REG PERIPHS_IO_MUX_U_TOUCH_GPIO17
|
||||
#define IO_MUX_GPIO18_REG PERIPHS_IO_MUX_U_TOUCH_GPIO18
|
||||
#define IO_MUX_GPIO19_REG PERIPHS_IO_MUX_U_TOUCH_GPIO19
|
||||
#define IO_MUX_GPIO20_REG PERIPHS_IO_MUX_U_GPIO20
|
||||
#define IO_MUX_GPIO21_REG PERIPHS_IO_MUX_U_GPIO21
|
||||
#define IO_MUX_GPIO22_REG PERIPHS_IO_MUX_U_GPIO22
|
||||
#define IO_MUX_GPIO23_REG PERIPHS_IO_MUX_U_GPIO23
|
||||
#define IO_MUX_GPIO24_REG PERIPHS_IO_MUX_U_GPIO24
|
||||
#define IO_MUX_GPIO25_REG PERIPHS_IO_MUX_U_GPIO25
|
||||
#define IO_MUX_GPIO26_REG PERIPHS_IO_MUX_U_GPIO26
|
||||
#define IO_MUX_GPIO27_REG PERIPHS_IO_MUX_U_GPIO27
|
||||
#define IO_MUX_GPIO28_REG PERIPHS_IO_MUX_U_GPIO28
|
||||
#define IO_MUX_GPIO29_REG PERIPHS_IO_MUX_U_GPIO29
|
||||
#define IO_MUX_GPIO30_REG PERIPHS_IO_MUX_U_GPIO30
|
||||
#define IO_MUX_GPIO31_REG PERIPHS_IO_MUX_U_GPIO31
|
||||
#define IO_MUX_GPIO32_REG PERIPHS_IO_MUX_U_GPIO32
|
||||
#define IO_MUX_GPIO33_REG PERIPHS_IO_MUX_U_USB_GPIO33
|
||||
#define IO_MUX_GPIO34_REG PERIPHS_IO_MUX_U_USB_GPIO34
|
||||
#define IO_MUX_GPIO35_REG PERIPHS_IO_MUX_U_GPIO35
|
||||
#define IO_MUX_GPIO36_REG PERIPHS_IO_MUX_U_GPIO36
|
||||
#define IO_MUX_GPIO37_REG PERIPHS_IO_MUX_U_GPIO37
|
||||
#define IO_MUX_GPIO38_REG PERIPHS_IO_MUX_U_GPIO38
|
||||
#define IO_MUX_GPIO39_REG PERIPHS_IO_MUX_U_GPIO39
|
||||
#define IO_MUX_GPIO40_REG PERIPHS_IO_MUX_U_GPIO40
|
||||
#define IO_MUX_GPIO41_REG PERIPHS_IO_MUX_U_GPIO41
|
||||
#define IO_MUX_GPIO42_REG PERIPHS_IO_MUX_U_ADC_GPIO42
|
||||
#define IO_MUX_GPIO43_REG PERIPHS_IO_MUX_U_ADC_GPIO43
|
||||
#define IO_MUX_GPIO44_REG PERIPHS_IO_MUX_U_ADC_GPIO44
|
||||
#define IO_MUX_GPIO45_REG PERIPHS_IO_MUX_U_ADC_GPIO45
|
||||
#define IO_MUX_GPIO46_REG PERIPHS_IO_MUX_U_ADC_GPIO46
|
||||
#define IO_MUX_GPIO47_REG PERIPHS_IO_MUX_U_ADC_GPIO47
|
||||
#define IO_MUX_GPIO48_REG PERIPHS_IO_MUX_U_ADC_GPIO48
|
||||
#define IO_MUX_GPIO49_REG PERIPHS_IO_MUX_U_ADC_GPIO49
|
||||
#define IO_MUX_GPIO50_REG PERIPHS_IO_MUX_U_ADC_GPIO50
|
||||
#define IO_MUX_GPIO51_REG PERIPHS_IO_MUX_U_ADC_GPIO51
|
||||
#define IO_MUX_GPIO52_REG PERIPHS_IO_MUX_U_ADC_GPIO52
|
||||
#define IO_MUX_GPIO53_REG PERIPHS_IO_MUX_U_ADC_GPIO53
|
||||
#define IO_MUX_GPIO54_REG PERIPHS_IO_MUX_U_ADC_GPIO54
|
||||
#define IO_MUX_GPIO55_REG PERIPHS_IO_MUX_U_ADC_GPIO55
|
||||
#define IO_MUX_GPIO56_REG PERIPHS_IO_MUX_U_ADC_GPIO56
|
||||
#define IO_MUX_GPIO57_REG PERIPHS_IO_MUX_U_ADC_GPIO57
|
||||
#define IO_MUX_GPIO58_REG PERIPHS_IO_MUX_U_GPIO58
|
||||
#define IO_MUX_GPIO59_REG PERIPHS_IO_MUX_U_GPIO59
|
||||
#define IO_MUX_GPIO60_REG PERIPHS_IO_MUX_U_GPIO60
|
||||
#define IO_MUX_GPIO61_REG PERIPHS_IO_MUX_U_GPIO61
|
||||
#define IO_MUX_GPIO62_REG PERIPHS_IO_MUX_U_GPIO62
|
||||
|
||||
#define FUNC_GPIO_GPIO 1
|
||||
#define PIN_FUNC_GPIO 1
|
||||
|
||||
#define MAX_RTC_GPIO_NUM 7
|
||||
#define MAX_PAD_GPIO_NUM 62
|
||||
|
||||
|
||||
#define REG_IO_MUX_BASE DR_REG_IO_MUX_BASE
|
||||
|
||||
// definitions below are generated from pin_txt.csv
|
||||
#define PERIPHS_IO_MUX_U_XTAL32K_HYS_P (REG_IO_MUX_BASE + 0x0)
|
||||
#define FUNC_XTAL_32K_N_GPIO0_0 0
|
||||
#define FUNC_XTAL_32K_N_GPIO0 1
|
||||
|
||||
#define PERIPHS_IO_MUX_U_XTAL32K_HYS_N (REG_IO_MUX_BASE + 0x4)
|
||||
#define FUNC_XTAL_32K_P_GPIO1_0 0
|
||||
#define FUNC_XTAL_32K_P_GPIO1 1
|
||||
|
||||
#define PERIPHS_IO_MUX_U_GPIO2 (REG_IO_MUX_BASE + 0x8)
|
||||
#define FUNC_GPIO2_GPIO2_0 0
|
||||
#define FUNC_GPIO2_GPIO2 1
|
||||
#define FUNC_GPIO2_LCD_DATA19_OUT_PAD 3
|
||||
|
||||
#define PERIPHS_IO_MUX_U_GPIO3 (REG_IO_MUX_BASE + 0xc)
|
||||
#define FUNC_GPIO3_GPIO3_0 0
|
||||
#define FUNC_GPIO3_GPIO3 1
|
||||
#define FUNC_GPIO3_LCD_DATA20_OUT_PAD 3
|
||||
|
||||
#define PERIPHS_IO_MUX_U_GPIO4 (REG_IO_MUX_BASE + 0x10)
|
||||
#define FUNC_GPIO4_GPIO4_0 0
|
||||
#define FUNC_GPIO4_GPIO4 1
|
||||
#define FUNC_GPIO4_LCD_DATA21_OUT_PAD 3
|
||||
|
||||
#define PERIPHS_IO_MUX_U_GPIO5 (REG_IO_MUX_BASE + 0x14)
|
||||
#define FUNC_GPIO5_GPIO5_0 0
|
||||
#define FUNC_GPIO5_GPIO5 1
|
||||
#define FUNC_GPIO5_LCD_DATA22_OUT_PAD 3
|
||||
|
||||
#define PERIPHS_IO_MUX_U_TOUCH_GPIO6 (REG_IO_MUX_BASE + 0x18)
|
||||
#define FUNC_GPIO6_GPIO6_0 0
|
||||
#define FUNC_GPIO6_GPIO6 1
|
||||
|
||||
#define PERIPHS_IO_MUX_U_TOUCH_GPIO7 (REG_IO_MUX_BASE + 0x1c)
|
||||
#define FUNC_GPIO7_GPIO7_0 0
|
||||
#define FUNC_GPIO7_GPIO7 1
|
||||
#define FUNC_GPIO7_LCD_DATA23_OUT_PAD 3
|
||||
|
||||
#define PERIPHS_IO_MUX_U_TOUCH_GPIO8 (REG_IO_MUX_BASE + 0x20)
|
||||
#define FUNC_GPIO8_GPIO8_0 0
|
||||
#define FUNC_GPIO8_GPIO8 1
|
||||
#define FUNC_GPIO8_GMAC_PHY_TXD0_PAD 2
|
||||
#define FUNC_GPIO8_LCD_DATA0_OUT_PAD 3
|
||||
|
||||
#define PERIPHS_IO_MUX_U_TOUCH_GPIO9 (REG_IO_MUX_BASE + 0x24)
|
||||
#define FUNC_GPIO9_SPI2_HOLD_PAD 0
|
||||
#define FUNC_GPIO9_GPIO9 1
|
||||
#define FUNC_GPIO9_GMAC_PHY_TXD1_PAD 2
|
||||
#define FUNC_GPIO9_LCD_DATA1_OUT_PAD 3
|
||||
#define FUNC_GPIO9_DBG_PSRAM_CK_PAD 4
|
||||
|
||||
#define PERIPHS_IO_MUX_U_TOUCH_GPIO10 (REG_IO_MUX_BASE + 0x28)
|
||||
#define FUNC_GPIO10_SPI2_CS_PAD 0
|
||||
#define FUNC_GPIO10_GPIO10 1
|
||||
#define FUNC_GPIO10_GMAC_PHY_TXD2_PAD 2
|
||||
#define FUNC_GPIO10_LCD_DATA2_OUT_PAD 3
|
||||
#define FUNC_GPIO10_DBG_PSRAM_CS_PAD 4
|
||||
|
||||
#define PERIPHS_IO_MUX_U_TOUCH_GPIO11 (REG_IO_MUX_BASE + 0x2c)
|
||||
#define FUNC_GPIO11_SPI2_D_PAD 0
|
||||
#define FUNC_GPIO11_GPIO11 1
|
||||
#define FUNC_GPIO11_GMAC_PHY_TXD3_PAD 2
|
||||
#define FUNC_GPIO11_LCD_DATA3_OUT_PAD 3
|
||||
#define FUNC_GPIO11_DBG_PSRAM_D_PAD 4
|
||||
|
||||
#define PERIPHS_IO_MUX_U_TOUCH_GPIO12 (REG_IO_MUX_BASE + 0x30)
|
||||
#define FUNC_GPIO12_SPI2_CK_PAD 0
|
||||
#define FUNC_GPIO12_GPIO12 1
|
||||
#define FUNC_GPIO12_GMAC_PHY_TXEN_PAD 2
|
||||
#define FUNC_GPIO12_LCD_DATA4_OUT_PAD 3
|
||||
#define FUNC_GPIO12_DBG_PSRAM_Q_PAD 4
|
||||
|
||||
#define PERIPHS_IO_MUX_U_TOUCH_GPIO13 (REG_IO_MUX_BASE + 0x34)
|
||||
#define FUNC_GPIO13_SPI2_Q_PAD 0
|
||||
#define FUNC_GPIO13_GPIO13 1
|
||||
#define FUNC_GPIO13_GMAC_RMII_CLK_PAD 2
|
||||
#define FUNC_GPIO13_LCD_DATA5_OUT_PAD 3
|
||||
#define FUNC_GPIO13_DBG_PSRAM_WP_PAD 4
|
||||
|
||||
#define PERIPHS_IO_MUX_U_TOUCH_GPIO14 (REG_IO_MUX_BASE + 0x38)
|
||||
#define FUNC_GPIO14_SPI2_WP_PAD 0
|
||||
#define FUNC_GPIO14_GPIO14 1
|
||||
#define FUNC_GPIO14_GMAC_RX_CLK_PAD 2
|
||||
#define FUNC_GPIO14_LCD_DATA6_OUT_PAD 3
|
||||
#define FUNC_GPIO14_DBG_PSRAM_HOLD_PAD 4
|
||||
|
||||
#define PERIPHS_IO_MUX_U_TOUCH_GPIO15 (REG_IO_MUX_BASE + 0x3c)
|
||||
#define FUNC_GPIO15_SPI2_IO4_PAD 0
|
||||
#define FUNC_GPIO15_GPIO15 1
|
||||
#define FUNC_GPIO15_GMAC_PHY_RXDV_PAD 2
|
||||
#define FUNC_GPIO15_LCD_DATA7_OUT_PAD 3
|
||||
#define FUNC_GPIO15_DBG_PSRAM_DQ4_PAD 4
|
||||
|
||||
#define PERIPHS_IO_MUX_U_TOUCH_GPIO16 (REG_IO_MUX_BASE + 0x40)
|
||||
#define FUNC_GPIO16_SPI2_IO5_PAD 0
|
||||
#define FUNC_GPIO16_GPIO16 1
|
||||
#define FUNC_GPIO16_GMAC_PHY_RXD3_PAD 2
|
||||
#define FUNC_GPIO16_LCD_DATA8_OUT_PAD 3
|
||||
#define FUNC_GPIO16_DBG_PSRAM_DQ5_PAD 4
|
||||
|
||||
#define PERIPHS_IO_MUX_U_TOUCH_GPIO17 (REG_IO_MUX_BASE + 0x44)
|
||||
#define FUNC_GPIO17_SPI2_IO6_PAD 0
|
||||
#define FUNC_GPIO17_GPIO17 1
|
||||
#define FUNC_GPIO17_GMAC_PHY_RXD2_PAD 2
|
||||
#define FUNC_GPIO17_LCD_DATA9_OUT_PAD 3
|
||||
#define FUNC_GPIO17_DBG_PSRAM_DQ6_PAD 4
|
||||
|
||||
#define PERIPHS_IO_MUX_U_TOUCH_GPIO18 (REG_IO_MUX_BASE + 0x48)
|
||||
#define FUNC_GPIO18_SPI2_IO7_PAD 0
|
||||
#define FUNC_GPIO18_GPIO18 1
|
||||
#define FUNC_GPIO18_GMAC_PHY_RXD1_PAD 2
|
||||
#define FUNC_GPIO18_LCD_DATA10_OUT_PAD 3
|
||||
#define FUNC_GPIO18_DBG_PSRAM_DQ7_PAD 4
|
||||
|
||||
#define PERIPHS_IO_MUX_U_TOUCH_GPIO19 (REG_IO_MUX_BASE + 0x4c)
|
||||
#define FUNC_GPIO19_SPI2_DQS_PAD 0
|
||||
#define FUNC_GPIO19_GPIO19 1
|
||||
#define FUNC_GPIO19_GMAC_PHY_RXD0_PAD 2
|
||||
#define FUNC_GPIO19_LCD_DATA11_OUT_PAD 3
|
||||
#define FUNC_GPIO19_DBG_PSRAM_DQS_0_PAD 4
|
||||
|
||||
#define PERIPHS_IO_MUX_U_GPIO20 (REG_IO_MUX_BASE + 0x50)
|
||||
#define FUNC_SDIO_DATA0_GPIO20_0 0
|
||||
#define FUNC_SDIO_DATA0_GPIO20 1
|
||||
#define FUNC_SDIO_DATA0_SPI2_CK_PAD 2
|
||||
#define FUNC_SDIO_DATA0_DBG_FLASH_CK_PAD 4
|
||||
|
||||
#define PERIPHS_IO_MUX_U_GPIO21 (REG_IO_MUX_BASE + 0x54)
|
||||
#define FUNC_SDIO_DATA1_GPIO21_0 0
|
||||
#define FUNC_SDIO_DATA1_GPIO21 1
|
||||
#define FUNC_SDIO_DATA1_SPI2_D_PAD 2
|
||||
#define FUNC_SDIO_DATA1_DBG_FLASH_D_PAD 4
|
||||
|
||||
#define PERIPHS_IO_MUX_U_GPIO22 (REG_IO_MUX_BASE + 0x58)
|
||||
#define FUNC_SDIO_DATA2_GPIO22_0 0
|
||||
#define FUNC_SDIO_DATA2_GPIO22 1
|
||||
#define FUNC_SDIO_DATA2_SPI2_Q_PAD 2
|
||||
#define FUNC_SDIO_DATA2_DBG_FLASH_CS_PAD 4
|
||||
|
||||
#define PERIPHS_IO_MUX_U_GPIO23 (REG_IO_MUX_BASE + 0x5c)
|
||||
#define FUNC_SDIO_DATA3_GPIO23_0 0
|
||||
#define FUNC_SDIO_DATA3_GPIO23 1
|
||||
#define FUNC_SDIO_DATA3_SPI2_CS_PAD 2
|
||||
#define FUNC_SDIO_DATA3_DBG_FLASH_Q_PAD 4
|
||||
|
||||
#define PERIPHS_IO_MUX_U_GPIO24 (REG_IO_MUX_BASE + 0x60)
|
||||
#define FUNC_SDIO_CLK_GPIO24_0 0
|
||||
#define FUNC_SDIO_CLK_GPIO24 1
|
||||
#define FUNC_SDIO_CLK_SPI2_HOLD_PAD 2
|
||||
#define FUNC_SDIO_CLK_DBG_FLASH_WP_PAD 4
|
||||
|
||||
#define PERIPHS_IO_MUX_U_GPIO25 (REG_IO_MUX_BASE + 0x64)
|
||||
#define FUNC_SDIO_CMD_GPIO25_0 0
|
||||
#define FUNC_SDIO_CMD_GPIO25 1
|
||||
#define FUNC_SDIO_CMD_SPI2_WP_PAD 2
|
||||
#define FUNC_SDIO_CMD_DBG_FLASH_HOLD_PAD 4
|
||||
|
||||
#define PERIPHS_IO_MUX_U_GPIO26 (REG_IO_MUX_BASE + 0x68)
|
||||
#define FUNC_SPICS_FLASH_CS_PAD 0
|
||||
#define FUNC_SPICS_GPIO26 1
|
||||
|
||||
#define PERIPHS_IO_MUX_U_GPIO27 (REG_IO_MUX_BASE + 0x6c)
|
||||
#define FUNC_SPIQ_FLASH_Q_PAD 0
|
||||
#define FUNC_SPIQ_GPIO27 1
|
||||
|
||||
#define PERIPHS_IO_MUX_U_GPIO28 (REG_IO_MUX_BASE + 0x70)
|
||||
#define FUNC_SPIWP_FLASH_WP_PAD 0
|
||||
#define FUNC_SPIWP_GPIO28 1
|
||||
|
||||
#define PERIPHS_IO_MUX_U_GPIO29 (REG_IO_MUX_BASE + 0x74)
|
||||
#define FUNC_VDD_SPI_GPIO29_0 0
|
||||
#define FUNC_VDD_SPI_GPIO29 1
|
||||
|
||||
#define PERIPHS_IO_MUX_U_GPIO30 (REG_IO_MUX_BASE + 0x78)
|
||||
#define FUNC_SPIHD_FLASH_HOLD_PAD 0
|
||||
#define FUNC_SPIHD_GPIO30 1
|
||||
|
||||
#define PERIPHS_IO_MUX_U_GPIO31 (REG_IO_MUX_BASE + 0x7c)
|
||||
#define FUNC_SPICLK_FLASH_CK_PAD 0
|
||||
#define FUNC_SPICLK_GPIO31 1
|
||||
|
||||
#define PERIPHS_IO_MUX_U_GPIO32 (REG_IO_MUX_BASE + 0x80)
|
||||
#define FUNC_SPID_FLASH_D_PAD 0
|
||||
#define FUNC_SPID_GPIO32 1
|
||||
|
||||
#define PERIPHS_IO_MUX_U_USB_GPIO33 (REG_IO_MUX_BASE + 0x84)
|
||||
#define FUNC_GPIO33_GPIO33_0 0
|
||||
#define FUNC_GPIO33_GPIO33 1
|
||||
#define FUNC_GPIO33_LCD_DATA12_OUT_PAD 3
|
||||
|
||||
#define PERIPHS_IO_MUX_U_USB_GPIO34 (REG_IO_MUX_BASE + 0x88)
|
||||
#define FUNC_GPIO34_GPIO34_0 0
|
||||
#define FUNC_GPIO34_GPIO34 1
|
||||
#define FUNC_GPIO34_LCD_DATA13_OUT_PAD 3
|
||||
|
||||
#define PERIPHS_IO_MUX_U_GPIO35 (REG_IO_MUX_BASE + 0x8c)
|
||||
#define FUNC_GPIO35_GPIO35_0 0
|
||||
#define FUNC_GPIO35_GPIO35 1
|
||||
#define FUNC_GPIO35_REF_GMAC_CLK_PAD 2
|
||||
#define FUNC_GPIO35_LCD_DATA14_OUT_PAD 3
|
||||
#define FUNC_GPIO35_SD2_CDATA0_PAD 4
|
||||
|
||||
// Strapping: LDO sel
|
||||
#define PERIPHS_IO_MUX_U_GPIO36 (REG_IO_MUX_BASE + 0x90)
|
||||
#define FUNC_GPIO36_GPIO36_0 0
|
||||
#define FUNC_GPIO36_GPIO36 1
|
||||
#define FUNC_GPIO36_GMAC_PHY_RXDV_PAD 2
|
||||
#define FUNC_GPIO36_LCD_DATA15_OUT_PAD 3
|
||||
#define FUNC_GPIO36_SD2_CDATA1_PAD 4
|
||||
|
||||
// Strapping: USB2JTAG select: 1->usb2jtag 0-> pad_jtag
|
||||
#define PERIPHS_IO_MUX_U_GPIO37 (REG_IO_MUX_BASE + 0x94)
|
||||
#define FUNC_GPIO37_GPIO37_0 0
|
||||
#define FUNC_GPIO37_GPIO37 1
|
||||
#define FUNC_GPIO37_GMAC_PHY_TXEN_PAD 2
|
||||
#define FUNC_GPIO37_LCD_DATA16_OUT_PAD 3
|
||||
#define FUNC_GPIO37_SD2_CDATA2_PAD 4
|
||||
|
||||
// Strapping: Boot Mode select 0
|
||||
#define PERIPHS_IO_MUX_U_GPIO38 (REG_IO_MUX_BASE + 0x98)
|
||||
#define FUNC_GPIO38_GPIO38_0 0
|
||||
#define FUNC_GPIO38_GPIO38 1
|
||||
#define FUNC_GPIO38_GMAC_PHY_RXD3_PAD 2
|
||||
#define FUNC_GPIO38_LCD_DATA17_OUT_PAD 3
|
||||
#define FUNC_GPIO38_SD2_CDATA3_PAD 4
|
||||
|
||||
// Strapping: Boot Mode select 1
|
||||
#define PERIPHS_IO_MUX_U_GPIO39 (REG_IO_MUX_BASE + 0x9c)
|
||||
#define FUNC_GPIO39_GPIO39_0 0
|
||||
#define FUNC_GPIO39_GPIO39 1
|
||||
#define FUNC_GPIO39_GMAC_PHY_RXD2_PAD 2
|
||||
#define FUNC_GPIO39_LCD_DATA18_OUT_PAD 3
|
||||
#define FUNC_GPIO39_SD2_CCLK_PAD 4
|
||||
|
||||
// Strapping: Boot Mode select 2
|
||||
#define PERIPHS_IO_MUX_U_GPIO40 (REG_IO_MUX_BASE + 0xa0)
|
||||
#define FUNC_GPIO40_GPIO40_0 0
|
||||
#define FUNC_GPIO40_GPIO40 1
|
||||
#define FUNC_GPIO40_GMAC_PHY_RXD1_PAD 2
|
||||
#define FUNC_GPIO40_LCD_PCLK_PAD 3
|
||||
#define FUNC_GPIO40_SD2_CCMD_PAD 4
|
||||
|
||||
#define PERIPHS_IO_MUX_U_GPIO41 (REG_IO_MUX_BASE + 0xa4)
|
||||
#define FUNC_GPIO41_GPIO41_0 0
|
||||
#define FUNC_GPIO41_GPIO41 1
|
||||
#define FUNC_GPIO41_GMAC_PHY_RXD0_PAD 2
|
||||
|
||||
#define PERIPHS_IO_MUX_U_ADC_GPIO42 (REG_IO_MUX_BASE + 0xa8)
|
||||
#define FUNC_GPIO42_GPIO42_0 0
|
||||
#define FUNC_GPIO42_GPIO42 1
|
||||
#define FUNC_GPIO42_GMAC_RX_CLK_PAD 2
|
||||
|
||||
#define PERIPHS_IO_MUX_U_ADC_GPIO43 (REG_IO_MUX_BASE + 0xac)
|
||||
#define FUNC_GPIO43_GPIO43_0 0
|
||||
#define FUNC_GPIO43_GPIO43 1
|
||||
#define FUNC_GPIO43_GMAC_RMII_CLK_PAD 2
|
||||
#define FUNC_GPIO43_LCD_H_ENABLE_PAD 3
|
||||
|
||||
#define PERIPHS_IO_MUX_U_ADC_GPIO44 (REG_IO_MUX_BASE + 0xb0)
|
||||
#define FUNC_GPIO44_GPIO44_0 0
|
||||
#define FUNC_GPIO44_GPIO44 1
|
||||
#define FUNC_GPIO44_GMAC_PHY_TXD0_PAD 2
|
||||
#define FUNC_GPIO44_LCD_H_SYNC_PAD 3
|
||||
|
||||
#define PERIPHS_IO_MUX_U_ADC_GPIO45 (REG_IO_MUX_BASE + 0xb4)
|
||||
#define FUNC_GPIO45_GPIO45_0 0
|
||||
#define FUNC_GPIO45_GPIO45 1
|
||||
#define FUNC_GPIO45_GMAC_PHY_TXD1_PAD 2
|
||||
#define FUNC_GPIO45_LCD_V_SYNC_PAD 3
|
||||
|
||||
#define PERIPHS_IO_MUX_U_ADC_GPIO46 (REG_IO_MUX_BASE + 0xb8)
|
||||
#define FUNC_GPIO46_GPIO46_0 0
|
||||
#define FUNC_GPIO46_GPIO46 1
|
||||
#define FUNC_GPIO46_GMAC_PHY_TXD2_PAD 2
|
||||
#define FUNC_GPIO46_CAM_DATA0_IN_PAD 3
|
||||
|
||||
#define PERIPHS_IO_MUX_U_ADC_GPIO47 (REG_IO_MUX_BASE + 0xbc)
|
||||
#define FUNC_GPIO47_GPIO47_0 0
|
||||
#define FUNC_GPIO47_GPIO47 1
|
||||
#define FUNC_GPIO47_GMAC_PHY_TXD3_PAD 2
|
||||
#define FUNC_GPIO47_CAM_DATA1_IN_PAD 3
|
||||
|
||||
#define PERIPHS_IO_MUX_U_ADC_GPIO48 (REG_IO_MUX_BASE + 0xc0)
|
||||
#define FUNC_GPIO48_GPIO48_0 0
|
||||
#define FUNC_GPIO48_GPIO48 1
|
||||
#define FUNC_GPIO48_CAM_DATA2_IN_PAD 3
|
||||
|
||||
#define PERIPHS_IO_MUX_U_ADC_GPIO49 (REG_IO_MUX_BASE + 0xc4)
|
||||
#define FUNC_GPIO49_GPIO49_0 0
|
||||
#define FUNC_GPIO49_GPIO49 1
|
||||
#define FUNC_GPIO49_CAM_DATA3_IN_PAD 3
|
||||
|
||||
#define PERIPHS_IO_MUX_U_ADC_GPIO50 (REG_IO_MUX_BASE + 0xc8)
|
||||
#define FUNC_GPIO50_GPIO50_0 0
|
||||
#define FUNC_GPIO50_GPIO50 1
|
||||
#define FUNC_GPIO50_CAM_DATA4_IN_PAD 3
|
||||
|
||||
#define PERIPHS_IO_MUX_U_ADC_GPIO51 (REG_IO_MUX_BASE + 0xcc)
|
||||
#define FUNC_GPIO51_GPIO51_0 0
|
||||
#define FUNC_GPIO51_GPIO51 1
|
||||
#define FUNC_GPIO51_CAM_DATA5_IN_PAD 3
|
||||
|
||||
#define PERIPHS_IO_MUX_U_ADC_GPIO52 (REG_IO_MUX_BASE + 0xd0)
|
||||
#define FUNC_GPIO52_GPIO52_0 0
|
||||
#define FUNC_GPIO52_GPIO52 1
|
||||
#define FUNC_GPIO52_SPI2_CS_PAD 2
|
||||
#define FUNC_GPIO52_CAM_DATA6_IN_PAD 3
|
||||
|
||||
#define PERIPHS_IO_MUX_U_ADC_GPIO53 (REG_IO_MUX_BASE + 0xd4)
|
||||
#define FUNC_GPIO53_GPIO53_0 0
|
||||
#define FUNC_GPIO53_GPIO53 1
|
||||
#define FUNC_GPIO53_SPI2_CK_PAD 2
|
||||
#define FUNC_GPIO53_CAM_DATA7_IN_PAD 3
|
||||
|
||||
#define PERIPHS_IO_MUX_U_ADC_GPIO54 (REG_IO_MUX_BASE + 0xd8)
|
||||
#define FUNC_MTDO_MTDO 0
|
||||
#define FUNC_MTDO_GPIO54 1
|
||||
#define FUNC_MTDO_SPI2_D_PAD 2
|
||||
#define FUNC_MTDO_CAM_PCLK_PAD 3
|
||||
|
||||
#define PERIPHS_IO_MUX_U_ADC_GPIO55 (REG_IO_MUX_BASE + 0xdc)
|
||||
#define FUNC_MTCK_MTCK 0
|
||||
#define FUNC_MTCK_GPIO55 1
|
||||
#define FUNC_MTCK_SPI2_Q_PAD 2
|
||||
#define FUNC_MTCK_CAM_XCLK_PAD 3
|
||||
|
||||
#define PERIPHS_IO_MUX_U_ADC_GPIO56 (REG_IO_MUX_BASE + 0xe0)
|
||||
#define FUNC_MTDI_MTDI 0
|
||||
#define FUNC_MTDI_GPIO56 1
|
||||
#define FUNC_MTDI_SPI2_HOLD_PAD 2
|
||||
#define FUNC_MTDI_CAM_V_SYNC_PAD 3
|
||||
|
||||
#define PERIPHS_IO_MUX_U_ADC_GPIO57 (REG_IO_MUX_BASE + 0xe4)
|
||||
#define FUNC_MTMS_MTMS 0
|
||||
#define FUNC_MTMS_GPIO57 1
|
||||
#define FUNC_MTMS_SPI2_WP_PAD 2
|
||||
#define FUNC_MTMS_CAM_H_SYNC_PAD 3
|
||||
|
||||
#define PERIPHS_IO_MUX_U_GPIO58 (REG_IO_MUX_BASE + 0xe8)
|
||||
#define FUNC_GPIO58_UART0_TXD_PAD 0
|
||||
#define FUNC_GPIO58_GPIO58 1
|
||||
|
||||
#define PERIPHS_IO_MUX_U_GPIO59 (REG_IO_MUX_BASE + 0xec)
|
||||
#define FUNC_GPIO59_UART0_RXD_PAD 0
|
||||
#define FUNC_GPIO59_GPIO59 1
|
||||
|
||||
// Strapping: Boot Mode select 3
|
||||
#define PERIPHS_IO_MUX_U_GPIO60 (REG_IO_MUX_BASE + 0xf0)
|
||||
#define FUNC_GPIO60_GPIO60_0 0
|
||||
#define FUNC_GPIO60_GPIO60 1
|
||||
|
||||
// Strapping: Boot Mode select 4
|
||||
#define PERIPHS_IO_MUX_U_GPIO61 (REG_IO_MUX_BASE + 0xf4)
|
||||
#define FUNC_GPIO61_GPIO61_0 0
|
||||
#define FUNC_GPIO61_GPIO61 1
|
||||
|
||||
#define PERIPHS_IO_MUX_U_GPIO62 (REG_IO_MUX_BASE + 0xf8)
|
||||
#define FUNC_GPIO62_GPIO62_0 0
|
||||
#define FUNC_GPIO62_GPIO62 1
|
||||
|
||||
|
||||
#define IO_MUX_DATE_REG (REG_IO_MUX_BASE + 0x1FC)
|
||||
/* IO_MUX_REG_DATE : R/W ;bitpos:[27:0] ;default: 28'h2502070 ; */
|
||||
/*description: Version control register.*/
|
||||
#define IO_MUX_REG_DATE 0x0FFFFFFF
|
||||
#define IO_MUX_REG_DATE_M ((IO_MUX_REG_DATE_V)<<(IO_MUX_REG_DATE_S))
|
||||
#define IO_MUX_REG_DATE_V 0xFFFFFFF
|
||||
#define IO_MUX_REG_DATE_S 0
|
||||
145
components/soc/esp32s31/register/soc/io_mux_struct.h
Normal file
145
components/soc/esp32s31/register/soc/io_mux_struct.h
Normal file
@@ -0,0 +1,145 @@
|
||||
/**
|
||||
* SPDX-FileCopyrightText: 2025 Espressif Systems (Shanghai) CO LTD
|
||||
*
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
*/
|
||||
#pragma once
|
||||
|
||||
#include <stdint.h>
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
/** Group: Configuration Registers */
|
||||
/** Type of gpio register
|
||||
* IO MUX configuration register for GPIOn
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** gpio_mcu_oe : R/W; bitpos: [0]; default: 0;
|
||||
* Configures whether or not to enable the output of GPIOn in sleep mode.
|
||||
* 0: Disable
|
||||
* 1: Enable
|
||||
*/
|
||||
uint32_t gpio_mcu_oe:1;
|
||||
/** gpio_slp_sel : R/W; bitpos: [1]; default: 0;
|
||||
* Configures whether or not to enter sleep mode for GPIOn.
|
||||
* 0: Not enter
|
||||
* 1: Enter
|
||||
*/
|
||||
uint32_t gpio_slp_sel:1;
|
||||
/** gpio_mcu_wpd : R/W; bitpos: [2]; default: 0;
|
||||
* Configure whether or not to enable pull-down resistor of GPIOn in sleep mode.
|
||||
* 0: Disable
|
||||
* 1: Enable
|
||||
*/
|
||||
uint32_t gpio_mcu_wpd:1;
|
||||
/** gpio_mcu_wpu : R/W; bitpos: [3]; default: 0;
|
||||
* Configures whether or not to enable pull-up resistor of GPIOn during sleep mode.
|
||||
* 0: Disable
|
||||
* 1: Enable
|
||||
*/
|
||||
uint32_t gpio_mcu_wpu:1;
|
||||
/** gpio_mcu_ie : R/W; bitpos: [4]; default: 0;
|
||||
* Configures whether or not to enable the input of GPIOn during sleep mode.
|
||||
* 0: Disable
|
||||
* 1: Enable
|
||||
*/
|
||||
uint32_t gpio_mcu_ie:1;
|
||||
/** gpio_mcu_drv : R/W; bitpos: [6:5]; default: 0;
|
||||
* Configures the drive strength of GPIOn during sleep mode.
|
||||
* 0: ~5 mA
|
||||
* 1: ~10 mA
|
||||
* 2: ~20 mA
|
||||
* 3: ~40 mA
|
||||
*/
|
||||
uint32_t gpio_mcu_drv:2;
|
||||
/** gpio_fun_wpd : R/W; bitpos: [7]; default: 0;
|
||||
* Configures whether or not to enable pull-down resistor of GPIOn.
|
||||
* 0: Disable
|
||||
* 1: Enable
|
||||
*/
|
||||
uint32_t gpio_fun_wpd:1;
|
||||
/** gpio_fun_wpu : R/W; bitpos: [8]; default: 0;
|
||||
* Configures whether or not enable pull-up resistor of GPIOn.
|
||||
* 0: Disable
|
||||
* 1: Enable
|
||||
*/
|
||||
uint32_t gpio_fun_wpu:1;
|
||||
/** gpio_fun_ie : R/W; bitpos: [9]; default: 0;
|
||||
* Configures whether or not to enable input of GPIOn.
|
||||
* 0: Disable
|
||||
* 1: Enable
|
||||
*/
|
||||
uint32_t gpio_fun_ie:1;
|
||||
/** gpio_fun_drv : R/W; bitpos: [11:10]; default: 2;
|
||||
* Configures the drive strength of GPIOn.
|
||||
* 0: ~5 mA
|
||||
* 1: ~10 mA
|
||||
* 2: ~20 mA
|
||||
* 3: ~40 mA
|
||||
*/
|
||||
uint32_t gpio_fun_drv:2;
|
||||
/** gpio_mcu_sel : R/W; bitpos: [14:12]; default: 1;
|
||||
* Configures to select IO MUX function for this signal.
|
||||
* 0: Select Function 0
|
||||
* 1: Select Function 1
|
||||
* ......
|
||||
*/
|
||||
uint32_t gpio_mcu_sel:3;
|
||||
/** gpio_filter_en : R/W; bitpos: [15]; default: 0;
|
||||
* Configures whether or not to enable filter for pin input signals.
|
||||
* 0: Disable
|
||||
* 1: Enable
|
||||
*/
|
||||
uint32_t gpio_filter_en:1;
|
||||
/** gpio_hys_en : R/W; bitpos: [16]; default: 0;
|
||||
* Configures whether or not to enable the hysteresis function of the pin when
|
||||
* IO_MUX_GPIOn_HYS_SEL is set to 1.
|
||||
* 0: Disable
|
||||
* 1: Enable
|
||||
*/
|
||||
uint32_t gpio_hys_en:1;
|
||||
/** gpio_hys_sel : R/W; bitpos: [17]; default: 0;
|
||||
* Configures to choose the signal for enabling the hysteresis function for GPIOn.
|
||||
* 0: Choose the output enable signal of eFuse
|
||||
* 1: Choose the output enable signal of IO_MUX_GPIOn_HYS_EN
|
||||
*/
|
||||
uint32_t gpio_hys_sel:1;
|
||||
uint32_t reserved_18:14;
|
||||
};
|
||||
uint32_t val;
|
||||
} io_mux_gpio_reg_t;
|
||||
|
||||
|
||||
/** Group: Version Register */
|
||||
/** Type of date register
|
||||
* Version control register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** reg_date : R/W; bitpos: [27:0]; default: 38805616;
|
||||
* Version control register
|
||||
*/
|
||||
uint32_t reg_date:28;
|
||||
uint32_t reserved_28:4;
|
||||
};
|
||||
uint32_t val;
|
||||
} io_mux_date_reg_t;
|
||||
|
||||
|
||||
typedef struct io_mux_dev_t {
|
||||
volatile io_mux_gpio_reg_t gpio[63];
|
||||
uint32_t reserved_0fc[64];
|
||||
volatile io_mux_date_reg_t date;
|
||||
} io_mux_dev_t;
|
||||
|
||||
extern io_mux_dev_t IO_MUX;
|
||||
|
||||
#ifndef __cplusplus
|
||||
_Static_assert(sizeof(io_mux_dev_t) == 0x200, "Invalid size of io_mux_dev_t structure");
|
||||
#endif
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
721
components/soc/esp32s31/register/soc/iomux_mspi_pin_reg.h
Normal file
721
components/soc/esp32s31/register/soc/iomux_mspi_pin_reg.h
Normal file
@@ -0,0 +1,721 @@
|
||||
/**
|
||||
* SPDX-FileCopyrightText: 2025 Espressif Systems (Shanghai) CO LTD
|
||||
*
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
*/
|
||||
#pragma once
|
||||
|
||||
#include <stdint.h>
|
||||
#include "soc/soc.h"
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
/** IOMUX_MSPI_PIN_CLK_EN0_REG register
|
||||
* apb registers auto clock gating reg
|
||||
*/
|
||||
#define IOMUX_MSPI_PIN_CLK_EN0_REG (DR_REG_IOMUX_MSPI_PIN_BASE + 0x0)
|
||||
/** IOMUX_MSPI_PIN_REG_CLK_EN : R/W; bitpos: [0]; default: 1;
|
||||
* 1: auto clock gating on
|
||||
* 0: auto clock gating off
|
||||
*/
|
||||
#define IOMUX_MSPI_PIN_REG_CLK_EN (BIT(0))
|
||||
#define IOMUX_MSPI_PIN_REG_CLK_EN_M (IOMUX_MSPI_PIN_REG_CLK_EN_V << IOMUX_MSPI_PIN_REG_CLK_EN_S)
|
||||
#define IOMUX_MSPI_PIN_REG_CLK_EN_V 0x00000001U
|
||||
#define IOMUX_MSPI_PIN_REG_CLK_EN_S 0
|
||||
|
||||
/** IOMUX_MSPI_PIN_PSRAM_D_PIN0_REG register
|
||||
* IOMUX_MSPI_PIN_PSRAM_D_PIN0_REG
|
||||
*/
|
||||
#define IOMUX_MSPI_PIN_PSRAM_D_PIN0_REG (DR_REG_IOMUX_MSPI_PIN_BASE + 0x1c)
|
||||
/** IOMUX_MSPI_PIN_REG_PSRAM_D_DLI : R/W; bitpos: [3:0]; default: 0;
|
||||
* psram d dli
|
||||
*/
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_D_DLI 0x0000000FU
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_D_DLI_M (IOMUX_MSPI_PIN_REG_PSRAM_D_DLI_V << IOMUX_MSPI_PIN_REG_PSRAM_D_DLI_S)
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_D_DLI_V 0x0000000FU
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_D_DLI_S 0
|
||||
/** IOMUX_MSPI_PIN_REG_PSRAM_D_DLC : R/W; bitpos: [7:4]; default: 0;
|
||||
* psram d dlc
|
||||
*/
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_D_DLC 0x0000000FU
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_D_DLC_M (IOMUX_MSPI_PIN_REG_PSRAM_D_DLC_V << IOMUX_MSPI_PIN_REG_PSRAM_D_DLC_S)
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_D_DLC_V 0x0000000FU
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_D_DLC_S 4
|
||||
/** IOMUX_MSPI_PIN_REG_PSRAM_D_HYS : R/W; bitpos: [8]; default: 0;
|
||||
* psram d sl
|
||||
*/
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_D_HYS (BIT(8))
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_D_HYS_M (IOMUX_MSPI_PIN_REG_PSRAM_D_HYS_V << IOMUX_MSPI_PIN_REG_PSRAM_D_HYS_S)
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_D_HYS_V 0x00000001U
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_D_HYS_S 8
|
||||
/** IOMUX_MSPI_PIN_REG_PSRAM_D_IE : R/W; bitpos: [9]; default: 0;
|
||||
* Reserved
|
||||
*/
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_D_IE (BIT(9))
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_D_IE_M (IOMUX_MSPI_PIN_REG_PSRAM_D_IE_V << IOMUX_MSPI_PIN_REG_PSRAM_D_IE_S)
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_D_IE_V 0x00000001U
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_D_IE_S 9
|
||||
/** IOMUX_MSPI_PIN_REG_PSRAM_D_WPU : R/W; bitpos: [10]; default: 0;
|
||||
* psram d wpu
|
||||
*/
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_D_WPU (BIT(10))
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_D_WPU_M (IOMUX_MSPI_PIN_REG_PSRAM_D_WPU_V << IOMUX_MSPI_PIN_REG_PSRAM_D_WPU_S)
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_D_WPU_V 0x00000001U
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_D_WPU_S 10
|
||||
/** IOMUX_MSPI_PIN_REG_PSRAM_D_WPD : R/W; bitpos: [11]; default: 0;
|
||||
* psram d wpd
|
||||
*/
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_D_WPD (BIT(11))
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_D_WPD_M (IOMUX_MSPI_PIN_REG_PSRAM_D_WPD_V << IOMUX_MSPI_PIN_REG_PSRAM_D_WPD_S)
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_D_WPD_V 0x00000001U
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_D_WPD_S 11
|
||||
/** IOMUX_MSPI_PIN_REG_PSRAM_D_DRV : R/W; bitpos: [14:12]; default: 4;
|
||||
* psram d drv
|
||||
*/
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_D_DRV 0x00000007U
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_D_DRV_M (IOMUX_MSPI_PIN_REG_PSRAM_D_DRV_V << IOMUX_MSPI_PIN_REG_PSRAM_D_DRV_S)
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_D_DRV_V 0x00000007U
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_D_DRV_S 12
|
||||
/** IOMUX_MSPI_PIN_REG_PSRAM_D_HOLD : R/W; bitpos: [15]; default: 0;
|
||||
* psram d hold
|
||||
*/
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_D_HOLD (BIT(15))
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_D_HOLD_M (IOMUX_MSPI_PIN_REG_PSRAM_D_HOLD_V << IOMUX_MSPI_PIN_REG_PSRAM_D_HOLD_S)
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_D_HOLD_V 0x00000001U
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_D_HOLD_S 15
|
||||
|
||||
/** IOMUX_MSPI_PIN_PSRAM_Q_PIN0_REG register
|
||||
* IOMUX_MSPI_PIN_PSRAM_D_PIN0_REG
|
||||
*/
|
||||
#define IOMUX_MSPI_PIN_PSRAM_Q_PIN0_REG (DR_REG_IOMUX_MSPI_PIN_BASE + 0x20)
|
||||
/** IOMUX_MSPI_PIN_REG_PSRAM_Q_DLI : R/W; bitpos: [3:0]; default: 0;
|
||||
* psram q dli
|
||||
*/
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_Q_DLI 0x0000000FU
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_Q_DLI_M (IOMUX_MSPI_PIN_REG_PSRAM_Q_DLI_V << IOMUX_MSPI_PIN_REG_PSRAM_Q_DLI_S)
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_Q_DLI_V 0x0000000FU
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_Q_DLI_S 0
|
||||
/** IOMUX_MSPI_PIN_REG_PSRAM_Q_DLC : R/W; bitpos: [7:4]; default: 0;
|
||||
* psram q dlc
|
||||
*/
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_Q_DLC 0x0000000FU
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_Q_DLC_M (IOMUX_MSPI_PIN_REG_PSRAM_Q_DLC_V << IOMUX_MSPI_PIN_REG_PSRAM_Q_DLC_S)
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_Q_DLC_V 0x0000000FU
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_Q_DLC_S 4
|
||||
/** IOMUX_MSPI_PIN_REG_PSRAM_Q_HYS : R/W; bitpos: [8]; default: 0;
|
||||
* psram q sl
|
||||
*/
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_Q_HYS (BIT(8))
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_Q_HYS_M (IOMUX_MSPI_PIN_REG_PSRAM_Q_HYS_V << IOMUX_MSPI_PIN_REG_PSRAM_Q_HYS_S)
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_Q_HYS_V 0x00000001U
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_Q_HYS_S 8
|
||||
/** IOMUX_MSPI_PIN_REG_PSRAM_Q_IE : R/W; bitpos: [9]; default: 0;
|
||||
* Reserved
|
||||
*/
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_Q_IE (BIT(9))
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_Q_IE_M (IOMUX_MSPI_PIN_REG_PSRAM_Q_IE_V << IOMUX_MSPI_PIN_REG_PSRAM_Q_IE_S)
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_Q_IE_V 0x00000001U
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_Q_IE_S 9
|
||||
/** IOMUX_MSPI_PIN_REG_PSRAM_Q_WPU : R/W; bitpos: [10]; default: 0;
|
||||
* psram q wpu
|
||||
*/
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_Q_WPU (BIT(10))
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_Q_WPU_M (IOMUX_MSPI_PIN_REG_PSRAM_Q_WPU_V << IOMUX_MSPI_PIN_REG_PSRAM_Q_WPU_S)
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_Q_WPU_V 0x00000001U
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_Q_WPU_S 10
|
||||
/** IOMUX_MSPI_PIN_REG_PSRAM_Q_WPD : R/W; bitpos: [11]; default: 0;
|
||||
* psram q wpd
|
||||
*/
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_Q_WPD (BIT(11))
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_Q_WPD_M (IOMUX_MSPI_PIN_REG_PSRAM_Q_WPD_V << IOMUX_MSPI_PIN_REG_PSRAM_Q_WPD_S)
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_Q_WPD_V 0x00000001U
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_Q_WPD_S 11
|
||||
/** IOMUX_MSPI_PIN_REG_PSRAM_Q_DRV : R/W; bitpos: [14:12]; default: 4;
|
||||
* psram q drv
|
||||
*/
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_Q_DRV 0x00000007U
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_Q_DRV_M (IOMUX_MSPI_PIN_REG_PSRAM_Q_DRV_V << IOMUX_MSPI_PIN_REG_PSRAM_Q_DRV_S)
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_Q_DRV_V 0x00000007U
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_Q_DRV_S 12
|
||||
/** IOMUX_MSPI_PIN_REG_PSRAM_Q_HOLD : R/W; bitpos: [15]; default: 0;
|
||||
* psram q hold
|
||||
*/
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_Q_HOLD (BIT(15))
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_Q_HOLD_M (IOMUX_MSPI_PIN_REG_PSRAM_Q_HOLD_V << IOMUX_MSPI_PIN_REG_PSRAM_Q_HOLD_S)
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_Q_HOLD_V 0x00000001U
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_Q_HOLD_S 15
|
||||
|
||||
/** IOMUX_MSPI_PIN_PSRAM_WP_PIN0_REG register
|
||||
* IOMUX_MSPI_PIN_PSRAM_D_PIN0_REG
|
||||
*/
|
||||
#define IOMUX_MSPI_PIN_PSRAM_WP_PIN0_REG (DR_REG_IOMUX_MSPI_PIN_BASE + 0x24)
|
||||
/** IOMUX_MSPI_PIN_REG_PSRAM_WP_DLI : R/W; bitpos: [3:0]; default: 0;
|
||||
* psram wp dli
|
||||
*/
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_WP_DLI 0x0000000FU
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_WP_DLI_M (IOMUX_MSPI_PIN_REG_PSRAM_WP_DLI_V << IOMUX_MSPI_PIN_REG_PSRAM_WP_DLI_S)
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_WP_DLI_V 0x0000000FU
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_WP_DLI_S 0
|
||||
/** IOMUX_MSPI_PIN_REG_PSRAM_WP_DLC : R/W; bitpos: [7:4]; default: 0;
|
||||
* psram wp dlc
|
||||
*/
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_WP_DLC 0x0000000FU
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_WP_DLC_M (IOMUX_MSPI_PIN_REG_PSRAM_WP_DLC_V << IOMUX_MSPI_PIN_REG_PSRAM_WP_DLC_S)
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_WP_DLC_V 0x0000000FU
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_WP_DLC_S 4
|
||||
/** IOMUX_MSPI_PIN_REG_PSRAM_WP_HYS : R/W; bitpos: [8]; default: 0;
|
||||
* psram wp sl
|
||||
*/
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_WP_HYS (BIT(8))
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_WP_HYS_M (IOMUX_MSPI_PIN_REG_PSRAM_WP_HYS_V << IOMUX_MSPI_PIN_REG_PSRAM_WP_HYS_S)
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_WP_HYS_V 0x00000001U
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_WP_HYS_S 8
|
||||
/** IOMUX_MSPI_PIN_REG_PSRAM_WP_IE : R/W; bitpos: [9]; default: 0;
|
||||
* Reserved
|
||||
*/
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_WP_IE (BIT(9))
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_WP_IE_M (IOMUX_MSPI_PIN_REG_PSRAM_WP_IE_V << IOMUX_MSPI_PIN_REG_PSRAM_WP_IE_S)
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_WP_IE_V 0x00000001U
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_WP_IE_S 9
|
||||
/** IOMUX_MSPI_PIN_REG_PSRAM_WP_WPU : R/W; bitpos: [10]; default: 0;
|
||||
* psram wp wpu
|
||||
*/
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_WP_WPU (BIT(10))
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_WP_WPU_M (IOMUX_MSPI_PIN_REG_PSRAM_WP_WPU_V << IOMUX_MSPI_PIN_REG_PSRAM_WP_WPU_S)
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_WP_WPU_V 0x00000001U
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_WP_WPU_S 10
|
||||
/** IOMUX_MSPI_PIN_REG_PSRAM_WP_WPD : R/W; bitpos: [11]; default: 0;
|
||||
* psram wp wpd
|
||||
*/
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_WP_WPD (BIT(11))
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_WP_WPD_M (IOMUX_MSPI_PIN_REG_PSRAM_WP_WPD_V << IOMUX_MSPI_PIN_REG_PSRAM_WP_WPD_S)
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_WP_WPD_V 0x00000001U
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_WP_WPD_S 11
|
||||
/** IOMUX_MSPI_PIN_REG_PSRAM_WP_DRV : R/W; bitpos: [14:12]; default: 4;
|
||||
* psram wp drv
|
||||
*/
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_WP_DRV 0x00000007U
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_WP_DRV_M (IOMUX_MSPI_PIN_REG_PSRAM_WP_DRV_V << IOMUX_MSPI_PIN_REG_PSRAM_WP_DRV_S)
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_WP_DRV_V 0x00000007U
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_WP_DRV_S 12
|
||||
/** IOMUX_MSPI_PIN_REG_PSRAM_WP_HOLD : R/W; bitpos: [15]; default: 0;
|
||||
* psram wp hold
|
||||
*/
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_WP_HOLD (BIT(15))
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_WP_HOLD_M (IOMUX_MSPI_PIN_REG_PSRAM_WP_HOLD_V << IOMUX_MSPI_PIN_REG_PSRAM_WP_HOLD_S)
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_WP_HOLD_V 0x00000001U
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_WP_HOLD_S 15
|
||||
|
||||
/** IOMUX_MSPI_PIN_PSRAM_HOLD_PIN0_REG register
|
||||
* IOMUX_MSPI_PIN_PSRAM_D_PIN0_REG
|
||||
*/
|
||||
#define IOMUX_MSPI_PIN_PSRAM_HOLD_PIN0_REG (DR_REG_IOMUX_MSPI_PIN_BASE + 0x28)
|
||||
/** IOMUX_MSPI_PIN_REG_PSRAM_HOLD_DLI : R/W; bitpos: [3:0]; default: 0;
|
||||
* psram hold dli
|
||||
*/
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_HOLD_DLI 0x0000000FU
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_HOLD_DLI_M (IOMUX_MSPI_PIN_REG_PSRAM_HOLD_DLI_V << IOMUX_MSPI_PIN_REG_PSRAM_HOLD_DLI_S)
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_HOLD_DLI_V 0x0000000FU
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_HOLD_DLI_S 0
|
||||
/** IOMUX_MSPI_PIN_REG_PSRAM_HOLD_DLC : R/W; bitpos: [7:4]; default: 0;
|
||||
* psram hold dlc
|
||||
*/
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_HOLD_DLC 0x0000000FU
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_HOLD_DLC_M (IOMUX_MSPI_PIN_REG_PSRAM_HOLD_DLC_V << IOMUX_MSPI_PIN_REG_PSRAM_HOLD_DLC_S)
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_HOLD_DLC_V 0x0000000FU
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_HOLD_DLC_S 4
|
||||
/** IOMUX_MSPI_PIN_REG_PSRAM_HOLD_HYS : R/W; bitpos: [8]; default: 0;
|
||||
* psram hold sl
|
||||
*/
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_HOLD_HYS (BIT(8))
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_HOLD_HYS_M (IOMUX_MSPI_PIN_REG_PSRAM_HOLD_HYS_V << IOMUX_MSPI_PIN_REG_PSRAM_HOLD_HYS_S)
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_HOLD_HYS_V 0x00000001U
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_HOLD_HYS_S 8
|
||||
/** IOMUX_MSPI_PIN_REG_PSRAM_HOLD_IE : R/W; bitpos: [9]; default: 0;
|
||||
* Reserved
|
||||
*/
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_HOLD_IE (BIT(9))
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_HOLD_IE_M (IOMUX_MSPI_PIN_REG_PSRAM_HOLD_IE_V << IOMUX_MSPI_PIN_REG_PSRAM_HOLD_IE_S)
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_HOLD_IE_V 0x00000001U
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_HOLD_IE_S 9
|
||||
/** IOMUX_MSPI_PIN_REG_PSRAM_HOLD_WPU : R/W; bitpos: [10]; default: 0;
|
||||
* psram hold wpu
|
||||
*/
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_HOLD_WPU (BIT(10))
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_HOLD_WPU_M (IOMUX_MSPI_PIN_REG_PSRAM_HOLD_WPU_V << IOMUX_MSPI_PIN_REG_PSRAM_HOLD_WPU_S)
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_HOLD_WPU_V 0x00000001U
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_HOLD_WPU_S 10
|
||||
/** IOMUX_MSPI_PIN_REG_PSRAM_HOLD_WPD : R/W; bitpos: [11]; default: 0;
|
||||
* psram hold wpd
|
||||
*/
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_HOLD_WPD (BIT(11))
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_HOLD_WPD_M (IOMUX_MSPI_PIN_REG_PSRAM_HOLD_WPD_V << IOMUX_MSPI_PIN_REG_PSRAM_HOLD_WPD_S)
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_HOLD_WPD_V 0x00000001U
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_HOLD_WPD_S 11
|
||||
/** IOMUX_MSPI_PIN_REG_PSRAM_HOLD_DRV : R/W; bitpos: [14:12]; default: 4;
|
||||
* psram hold drv
|
||||
*/
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_HOLD_DRV 0x00000007U
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_HOLD_DRV_M (IOMUX_MSPI_PIN_REG_PSRAM_HOLD_DRV_V << IOMUX_MSPI_PIN_REG_PSRAM_HOLD_DRV_S)
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_HOLD_DRV_V 0x00000007U
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_HOLD_DRV_S 12
|
||||
/** IOMUX_MSPI_PIN_REG_PSRAM_HOLD_HOLD : R/W; bitpos: [15]; default: 0;
|
||||
* psram hold hold
|
||||
*/
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_HOLD_HOLD (BIT(15))
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_HOLD_HOLD_M (IOMUX_MSPI_PIN_REG_PSRAM_HOLD_HOLD_V << IOMUX_MSPI_PIN_REG_PSRAM_HOLD_HOLD_S)
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_HOLD_HOLD_V 0x00000001U
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_HOLD_HOLD_S 15
|
||||
|
||||
/** IOMUX_MSPI_PIN_PSRAM_DQ4_PIN0_REG register
|
||||
* IOMUX_MSPI_PIN_PSRAM_D_PIN0_REG
|
||||
*/
|
||||
#define IOMUX_MSPI_PIN_PSRAM_DQ4_PIN0_REG (DR_REG_IOMUX_MSPI_PIN_BASE + 0x2c)
|
||||
/** IOMUX_MSPI_PIN_REG_PSRAM_DQ4_DLI : R/W; bitpos: [3:0]; default: 0;
|
||||
* psram dq4 dli
|
||||
*/
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_DQ4_DLI 0x0000000FU
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_DQ4_DLI_M (IOMUX_MSPI_PIN_REG_PSRAM_DQ4_DLI_V << IOMUX_MSPI_PIN_REG_PSRAM_DQ4_DLI_S)
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_DQ4_DLI_V 0x0000000FU
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_DQ4_DLI_S 0
|
||||
/** IOMUX_MSPI_PIN_REG_PSRAM_DQ4_DLC : R/W; bitpos: [7:4]; default: 0;
|
||||
* psram dq4 dlc
|
||||
*/
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_DQ4_DLC 0x0000000FU
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_DQ4_DLC_M (IOMUX_MSPI_PIN_REG_PSRAM_DQ4_DLC_V << IOMUX_MSPI_PIN_REG_PSRAM_DQ4_DLC_S)
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_DQ4_DLC_V 0x0000000FU
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_DQ4_DLC_S 4
|
||||
/** IOMUX_MSPI_PIN_REG_PSRAM_DQ4_HYS : R/W; bitpos: [8]; default: 0;
|
||||
* psram dq4 sl
|
||||
*/
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_DQ4_HYS (BIT(8))
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_DQ4_HYS_M (IOMUX_MSPI_PIN_REG_PSRAM_DQ4_HYS_V << IOMUX_MSPI_PIN_REG_PSRAM_DQ4_HYS_S)
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_DQ4_HYS_V 0x00000001U
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_DQ4_HYS_S 8
|
||||
/** IOMUX_MSPI_PIN_REG_PSRAM_DQ4_IE : R/W; bitpos: [9]; default: 0;
|
||||
* Reserved
|
||||
*/
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_DQ4_IE (BIT(9))
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_DQ4_IE_M (IOMUX_MSPI_PIN_REG_PSRAM_DQ4_IE_V << IOMUX_MSPI_PIN_REG_PSRAM_DQ4_IE_S)
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_DQ4_IE_V 0x00000001U
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_DQ4_IE_S 9
|
||||
/** IOMUX_MSPI_PIN_REG_PSRAM_DQ4_WPU : R/W; bitpos: [10]; default: 0;
|
||||
* psram dq4 wpu
|
||||
*/
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_DQ4_WPU (BIT(10))
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_DQ4_WPU_M (IOMUX_MSPI_PIN_REG_PSRAM_DQ4_WPU_V << IOMUX_MSPI_PIN_REG_PSRAM_DQ4_WPU_S)
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_DQ4_WPU_V 0x00000001U
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_DQ4_WPU_S 10
|
||||
/** IOMUX_MSPI_PIN_REG_PSRAM_DQ4_WPD : R/W; bitpos: [11]; default: 0;
|
||||
* psram dq4 wpd
|
||||
*/
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_DQ4_WPD (BIT(11))
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_DQ4_WPD_M (IOMUX_MSPI_PIN_REG_PSRAM_DQ4_WPD_V << IOMUX_MSPI_PIN_REG_PSRAM_DQ4_WPD_S)
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_DQ4_WPD_V 0x00000001U
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_DQ4_WPD_S 11
|
||||
/** IOMUX_MSPI_PIN_REG_PSRAM_DQ4_DRV : R/W; bitpos: [14:12]; default: 4;
|
||||
* psram dq4 drv
|
||||
*/
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_DQ4_DRV 0x00000007U
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_DQ4_DRV_M (IOMUX_MSPI_PIN_REG_PSRAM_DQ4_DRV_V << IOMUX_MSPI_PIN_REG_PSRAM_DQ4_DRV_S)
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_DQ4_DRV_V 0x00000007U
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_DQ4_DRV_S 12
|
||||
/** IOMUX_MSPI_PIN_REG_PSRAM_DQ4_HOLD : R/W; bitpos: [15]; default: 0;
|
||||
* psram dq4 hold
|
||||
*/
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_DQ4_HOLD (BIT(15))
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_DQ4_HOLD_M (IOMUX_MSPI_PIN_REG_PSRAM_DQ4_HOLD_V << IOMUX_MSPI_PIN_REG_PSRAM_DQ4_HOLD_S)
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_DQ4_HOLD_V 0x00000001U
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_DQ4_HOLD_S 15
|
||||
|
||||
/** IOMUX_MSPI_PIN_PSRAM_DQ5_PIN0_REG register
|
||||
* IOMUX_MSPI_PIN_PSRAM_D_PIN0_REG
|
||||
*/
|
||||
#define IOMUX_MSPI_PIN_PSRAM_DQ5_PIN0_REG (DR_REG_IOMUX_MSPI_PIN_BASE + 0x30)
|
||||
/** IOMUX_MSPI_PIN_REG_PSRAM_DQ5_DLI : R/W; bitpos: [3:0]; default: 0;
|
||||
* psram dq5 dli
|
||||
*/
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_DQ5_DLI 0x0000000FU
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_DQ5_DLI_M (IOMUX_MSPI_PIN_REG_PSRAM_DQ5_DLI_V << IOMUX_MSPI_PIN_REG_PSRAM_DQ5_DLI_S)
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_DQ5_DLI_V 0x0000000FU
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_DQ5_DLI_S 0
|
||||
/** IOMUX_MSPI_PIN_REG_PSRAM_DQ5_DLC : R/W; bitpos: [7:4]; default: 0;
|
||||
* psram dq5 dlc
|
||||
*/
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_DQ5_DLC 0x0000000FU
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_DQ5_DLC_M (IOMUX_MSPI_PIN_REG_PSRAM_DQ5_DLC_V << IOMUX_MSPI_PIN_REG_PSRAM_DQ5_DLC_S)
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_DQ5_DLC_V 0x0000000FU
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_DQ5_DLC_S 4
|
||||
/** IOMUX_MSPI_PIN_REG_PSRAM_DQ5_HYS : R/W; bitpos: [8]; default: 0;
|
||||
* psram dq5 sl
|
||||
*/
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_DQ5_HYS (BIT(8))
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_DQ5_HYS_M (IOMUX_MSPI_PIN_REG_PSRAM_DQ5_HYS_V << IOMUX_MSPI_PIN_REG_PSRAM_DQ5_HYS_S)
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_DQ5_HYS_V 0x00000001U
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_DQ5_HYS_S 8
|
||||
/** IOMUX_MSPI_PIN_REG_PSRAM_DQ5_IE : R/W; bitpos: [9]; default: 0;
|
||||
* Reserved
|
||||
*/
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_DQ5_IE (BIT(9))
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_DQ5_IE_M (IOMUX_MSPI_PIN_REG_PSRAM_DQ5_IE_V << IOMUX_MSPI_PIN_REG_PSRAM_DQ5_IE_S)
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_DQ5_IE_V 0x00000001U
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_DQ5_IE_S 9
|
||||
/** IOMUX_MSPI_PIN_REG_PSRAM_DQ5_WPU : R/W; bitpos: [10]; default: 0;
|
||||
* psram dq5 wpu
|
||||
*/
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_DQ5_WPU (BIT(10))
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_DQ5_WPU_M (IOMUX_MSPI_PIN_REG_PSRAM_DQ5_WPU_V << IOMUX_MSPI_PIN_REG_PSRAM_DQ5_WPU_S)
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_DQ5_WPU_V 0x00000001U
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_DQ5_WPU_S 10
|
||||
/** IOMUX_MSPI_PIN_REG_PSRAM_DQ5_WPD : R/W; bitpos: [11]; default: 0;
|
||||
* psram dq5 wpd
|
||||
*/
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_DQ5_WPD (BIT(11))
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_DQ5_WPD_M (IOMUX_MSPI_PIN_REG_PSRAM_DQ5_WPD_V << IOMUX_MSPI_PIN_REG_PSRAM_DQ5_WPD_S)
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_DQ5_WPD_V 0x00000001U
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_DQ5_WPD_S 11
|
||||
/** IOMUX_MSPI_PIN_REG_PSRAM_DQ5_DRV : R/W; bitpos: [14:12]; default: 4;
|
||||
* psram dq5 drv
|
||||
*/
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_DQ5_DRV 0x00000007U
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_DQ5_DRV_M (IOMUX_MSPI_PIN_REG_PSRAM_DQ5_DRV_V << IOMUX_MSPI_PIN_REG_PSRAM_DQ5_DRV_S)
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_DQ5_DRV_V 0x00000007U
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_DQ5_DRV_S 12
|
||||
/** IOMUX_MSPI_PIN_REG_PSRAM_DQ5_HOLD : R/W; bitpos: [15]; default: 0;
|
||||
* psram dq5 hold
|
||||
*/
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_DQ5_HOLD (BIT(15))
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_DQ5_HOLD_M (IOMUX_MSPI_PIN_REG_PSRAM_DQ5_HOLD_V << IOMUX_MSPI_PIN_REG_PSRAM_DQ5_HOLD_S)
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_DQ5_HOLD_V 0x00000001U
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_DQ5_HOLD_S 15
|
||||
|
||||
/** IOMUX_MSPI_PIN_PSRAM_DQ6_PIN0_REG register
|
||||
* IOMUX_MSPI_PIN_PSRAM_D_PIN0_REG
|
||||
*/
|
||||
#define IOMUX_MSPI_PIN_PSRAM_DQ6_PIN0_REG (DR_REG_IOMUX_MSPI_PIN_BASE + 0x34)
|
||||
/** IOMUX_MSPI_PIN_REG_PSRAM_DQ6_DLI : R/W; bitpos: [3:0]; default: 0;
|
||||
* psram dq6 dli
|
||||
*/
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_DQ6_DLI 0x0000000FU
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_DQ6_DLI_M (IOMUX_MSPI_PIN_REG_PSRAM_DQ6_DLI_V << IOMUX_MSPI_PIN_REG_PSRAM_DQ6_DLI_S)
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_DQ6_DLI_V 0x0000000FU
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_DQ6_DLI_S 0
|
||||
/** IOMUX_MSPI_PIN_REG_PSRAM_DQ6_DLC : R/W; bitpos: [7:4]; default: 0;
|
||||
* psram dq6 dlc
|
||||
*/
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_DQ6_DLC 0x0000000FU
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_DQ6_DLC_M (IOMUX_MSPI_PIN_REG_PSRAM_DQ6_DLC_V << IOMUX_MSPI_PIN_REG_PSRAM_DQ6_DLC_S)
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_DQ6_DLC_V 0x0000000FU
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_DQ6_DLC_S 4
|
||||
/** IOMUX_MSPI_PIN_REG_PSRAM_DQ6_HYS : R/W; bitpos: [8]; default: 0;
|
||||
* psram dq6 sl
|
||||
*/
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_DQ6_HYS (BIT(8))
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_DQ6_HYS_M (IOMUX_MSPI_PIN_REG_PSRAM_DQ6_HYS_V << IOMUX_MSPI_PIN_REG_PSRAM_DQ6_HYS_S)
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_DQ6_HYS_V 0x00000001U
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_DQ6_HYS_S 8
|
||||
/** IOMUX_MSPI_PIN_REG_PSRAM_DQ6_IE : R/W; bitpos: [9]; default: 0;
|
||||
* Reserved
|
||||
*/
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_DQ6_IE (BIT(9))
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_DQ6_IE_M (IOMUX_MSPI_PIN_REG_PSRAM_DQ6_IE_V << IOMUX_MSPI_PIN_REG_PSRAM_DQ6_IE_S)
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_DQ6_IE_V 0x00000001U
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_DQ6_IE_S 9
|
||||
/** IOMUX_MSPI_PIN_REG_PSRAM_DQ6_WPU : R/W; bitpos: [10]; default: 0;
|
||||
* psram dq6 wpu
|
||||
*/
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_DQ6_WPU (BIT(10))
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_DQ6_WPU_M (IOMUX_MSPI_PIN_REG_PSRAM_DQ6_WPU_V << IOMUX_MSPI_PIN_REG_PSRAM_DQ6_WPU_S)
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_DQ6_WPU_V 0x00000001U
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_DQ6_WPU_S 10
|
||||
/** IOMUX_MSPI_PIN_REG_PSRAM_DQ6_WPD : R/W; bitpos: [11]; default: 0;
|
||||
* psram dq6 wpd
|
||||
*/
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_DQ6_WPD (BIT(11))
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_DQ6_WPD_M (IOMUX_MSPI_PIN_REG_PSRAM_DQ6_WPD_V << IOMUX_MSPI_PIN_REG_PSRAM_DQ6_WPD_S)
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_DQ6_WPD_V 0x00000001U
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_DQ6_WPD_S 11
|
||||
/** IOMUX_MSPI_PIN_REG_PSRAM_DQ6_DRV : R/W; bitpos: [14:12]; default: 4;
|
||||
* psram dq6 drv
|
||||
*/
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_DQ6_DRV 0x00000007U
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_DQ6_DRV_M (IOMUX_MSPI_PIN_REG_PSRAM_DQ6_DRV_V << IOMUX_MSPI_PIN_REG_PSRAM_DQ6_DRV_S)
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_DQ6_DRV_V 0x00000007U
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_DQ6_DRV_S 12
|
||||
/** IOMUX_MSPI_PIN_REG_PSRAM_DQ6_HOLD : R/W; bitpos: [15]; default: 0;
|
||||
* psram dq6 hold
|
||||
*/
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_DQ6_HOLD (BIT(15))
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_DQ6_HOLD_M (IOMUX_MSPI_PIN_REG_PSRAM_DQ6_HOLD_V << IOMUX_MSPI_PIN_REG_PSRAM_DQ6_HOLD_S)
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_DQ6_HOLD_V 0x00000001U
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_DQ6_HOLD_S 15
|
||||
|
||||
/** IOMUX_MSPI_PIN_PSRAM_DQ7_PIN0_REG register
|
||||
* IOMUX_MSPI_PIN_PSRAM_D_PIN0_REG
|
||||
*/
|
||||
#define IOMUX_MSPI_PIN_PSRAM_DQ7_PIN0_REG (DR_REG_IOMUX_MSPI_PIN_BASE + 0x38)
|
||||
/** IOMUX_MSPI_PIN_REG_PSRAM_DQ7_DLI : R/W; bitpos: [3:0]; default: 0;
|
||||
* psram dq7 dli
|
||||
*/
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_DQ7_DLI 0x0000000FU
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_DQ7_DLI_M (IOMUX_MSPI_PIN_REG_PSRAM_DQ7_DLI_V << IOMUX_MSPI_PIN_REG_PSRAM_DQ7_DLI_S)
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_DQ7_DLI_V 0x0000000FU
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_DQ7_DLI_S 0
|
||||
/** IOMUX_MSPI_PIN_REG_PSRAM_DQ7_DLC : R/W; bitpos: [7:4]; default: 0;
|
||||
* psram dq7 dlc
|
||||
*/
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_DQ7_DLC 0x0000000FU
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_DQ7_DLC_M (IOMUX_MSPI_PIN_REG_PSRAM_DQ7_DLC_V << IOMUX_MSPI_PIN_REG_PSRAM_DQ7_DLC_S)
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_DQ7_DLC_V 0x0000000FU
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_DQ7_DLC_S 4
|
||||
/** IOMUX_MSPI_PIN_REG_PSRAM_DQ7_HYS : R/W; bitpos: [8]; default: 0;
|
||||
* psram dq7 sl
|
||||
*/
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_DQ7_HYS (BIT(8))
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_DQ7_HYS_M (IOMUX_MSPI_PIN_REG_PSRAM_DQ7_HYS_V << IOMUX_MSPI_PIN_REG_PSRAM_DQ7_HYS_S)
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_DQ7_HYS_V 0x00000001U
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_DQ7_HYS_S 8
|
||||
/** IOMUX_MSPI_PIN_REG_PSRAM_DQ7_IE : R/W; bitpos: [9]; default: 0;
|
||||
* Reserved
|
||||
*/
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_DQ7_IE (BIT(9))
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_DQ7_IE_M (IOMUX_MSPI_PIN_REG_PSRAM_DQ7_IE_V << IOMUX_MSPI_PIN_REG_PSRAM_DQ7_IE_S)
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_DQ7_IE_V 0x00000001U
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_DQ7_IE_S 9
|
||||
/** IOMUX_MSPI_PIN_REG_PSRAM_DQ7_WPU : R/W; bitpos: [10]; default: 0;
|
||||
* psram dq7 wpu
|
||||
*/
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_DQ7_WPU (BIT(10))
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_DQ7_WPU_M (IOMUX_MSPI_PIN_REG_PSRAM_DQ7_WPU_V << IOMUX_MSPI_PIN_REG_PSRAM_DQ7_WPU_S)
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_DQ7_WPU_V 0x00000001U
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_DQ7_WPU_S 10
|
||||
/** IOMUX_MSPI_PIN_REG_PSRAM_DQ7_WPD : R/W; bitpos: [11]; default: 0;
|
||||
* psram dq7 wpd
|
||||
*/
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_DQ7_WPD (BIT(11))
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_DQ7_WPD_M (IOMUX_MSPI_PIN_REG_PSRAM_DQ7_WPD_V << IOMUX_MSPI_PIN_REG_PSRAM_DQ7_WPD_S)
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_DQ7_WPD_V 0x00000001U
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_DQ7_WPD_S 11
|
||||
/** IOMUX_MSPI_PIN_REG_PSRAM_DQ7_DRV : R/W; bitpos: [14:12]; default: 4;
|
||||
* psram dq7 drv
|
||||
*/
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_DQ7_DRV 0x00000007U
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_DQ7_DRV_M (IOMUX_MSPI_PIN_REG_PSRAM_DQ7_DRV_V << IOMUX_MSPI_PIN_REG_PSRAM_DQ7_DRV_S)
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_DQ7_DRV_V 0x00000007U
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_DQ7_DRV_S 12
|
||||
/** IOMUX_MSPI_PIN_REG_PSRAM_DQ7_HOLD : R/W; bitpos: [15]; default: 0;
|
||||
* psram dq7 hold
|
||||
*/
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_DQ7_HOLD (BIT(15))
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_DQ7_HOLD_M (IOMUX_MSPI_PIN_REG_PSRAM_DQ7_HOLD_V << IOMUX_MSPI_PIN_REG_PSRAM_DQ7_HOLD_S)
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_DQ7_HOLD_V 0x00000001U
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_DQ7_HOLD_S 15
|
||||
|
||||
/** IOMUX_MSPI_PIN_PSRAM_DQS_0_PIN0_REG register
|
||||
* IOMUX_MSPI_PIN_PSRAM_D_PIN0_REG
|
||||
*/
|
||||
#define IOMUX_MSPI_PIN_PSRAM_DQS_0_PIN0_REG (DR_REG_IOMUX_MSPI_PIN_BASE + 0x3c)
|
||||
/** IOMUX_MSPI_PIN_REG_PSRAM_DQS_0_XPD : R/W; bitpos: [0]; default: 0;
|
||||
* psram xpd dqs0
|
||||
*/
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_DQS_0_XPD (BIT(0))
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_DQS_0_XPD_M (IOMUX_MSPI_PIN_REG_PSRAM_DQS_0_XPD_V << IOMUX_MSPI_PIN_REG_PSRAM_DQS_0_XPD_S)
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_DQS_0_XPD_V 0x00000001U
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_DQS_0_XPD_S 0
|
||||
/** IOMUX_MSPI_PIN_REG_PSRAM_DQS_0_PHASE : R/W; bitpos: [2:1]; default: 0;
|
||||
* psram dqs0 phase
|
||||
*/
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_DQS_0_PHASE 0x00000003U
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_DQS_0_PHASE_M (IOMUX_MSPI_PIN_REG_PSRAM_DQS_0_PHASE_V << IOMUX_MSPI_PIN_REG_PSRAM_DQS_0_PHASE_S)
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_DQS_0_PHASE_V 0x00000003U
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_DQS_0_PHASE_S 1
|
||||
/** IOMUX_MSPI_PIN_REG_PSRAM_DQS_0_DLI : R/W; bitpos: [6:3]; default: 0;
|
||||
* psram dqs0 dli
|
||||
*/
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_DQS_0_DLI 0x0000000FU
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_DQS_0_DLI_M (IOMUX_MSPI_PIN_REG_PSRAM_DQS_0_DLI_V << IOMUX_MSPI_PIN_REG_PSRAM_DQS_0_DLI_S)
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_DQS_0_DLI_V 0x0000000FU
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_DQS_0_DLI_S 3
|
||||
/** IOMUX_MSPI_PIN_REG_PSRAM_DQS_0_DELAY_90 : R/W; bitpos: [10:7]; default: 0;
|
||||
* psram dqs0 delay 90
|
||||
*/
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_DQS_0_DELAY_90 0x0000000FU
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_DQS_0_DELAY_90_M (IOMUX_MSPI_PIN_REG_PSRAM_DQS_0_DELAY_90_V << IOMUX_MSPI_PIN_REG_PSRAM_DQS_0_DELAY_90_S)
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_DQS_0_DELAY_90_V 0x0000000FU
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_DQS_0_DELAY_90_S 7
|
||||
/** IOMUX_MSPI_PIN_REG_PSRAM_DQS_0_HYS : R/W; bitpos: [11]; default: 0;
|
||||
* psram dqs0 sl
|
||||
*/
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_DQS_0_HYS (BIT(11))
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_DQS_0_HYS_M (IOMUX_MSPI_PIN_REG_PSRAM_DQS_0_HYS_V << IOMUX_MSPI_PIN_REG_PSRAM_DQS_0_HYS_S)
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_DQS_0_HYS_V 0x00000001U
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_DQS_0_HYS_S 11
|
||||
/** IOMUX_MSPI_PIN_REG_PSRAM_DQS_0_IE : R/W; bitpos: [12]; default: 0;
|
||||
* Reserved
|
||||
*/
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_DQS_0_IE (BIT(12))
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_DQS_0_IE_M (IOMUX_MSPI_PIN_REG_PSRAM_DQS_0_IE_V << IOMUX_MSPI_PIN_REG_PSRAM_DQS_0_IE_S)
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_DQS_0_IE_V 0x00000001U
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_DQS_0_IE_S 12
|
||||
/** IOMUX_MSPI_PIN_REG_PSRAM_DQS_0_WPU : R/W; bitpos: [13]; default: 0;
|
||||
* psram dqs0 wpu
|
||||
*/
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_DQS_0_WPU (BIT(13))
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_DQS_0_WPU_M (IOMUX_MSPI_PIN_REG_PSRAM_DQS_0_WPU_V << IOMUX_MSPI_PIN_REG_PSRAM_DQS_0_WPU_S)
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_DQS_0_WPU_V 0x00000001U
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_DQS_0_WPU_S 13
|
||||
/** IOMUX_MSPI_PIN_REG_PSRAM_DQS_0_WPD : R/W; bitpos: [14]; default: 0;
|
||||
* psram dqs0 wpd
|
||||
*/
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_DQS_0_WPD (BIT(14))
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_DQS_0_WPD_M (IOMUX_MSPI_PIN_REG_PSRAM_DQS_0_WPD_V << IOMUX_MSPI_PIN_REG_PSRAM_DQS_0_WPD_S)
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_DQS_0_WPD_V 0x00000001U
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_DQS_0_WPD_S 14
|
||||
/** IOMUX_MSPI_PIN_REG_PSRAM_DQS_0_DRV : R/W; bitpos: [17:15]; default: 4;
|
||||
* psram dqs0 drv
|
||||
*/
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_DQS_0_DRV 0x00000007U
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_DQS_0_DRV_M (IOMUX_MSPI_PIN_REG_PSRAM_DQS_0_DRV_V << IOMUX_MSPI_PIN_REG_PSRAM_DQS_0_DRV_S)
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_DQS_0_DRV_V 0x00000007U
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_DQS_0_DRV_S 15
|
||||
/** IOMUX_MSPI_PIN_REG_PSRAM_DQS_0_DELAY_270 : R/W; bitpos: [21:18]; default: 0;
|
||||
* psram dqs0 delay 270
|
||||
*/
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_DQS_0_DELAY_270 0x0000000FU
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_DQS_0_DELAY_270_M (IOMUX_MSPI_PIN_REG_PSRAM_DQS_0_DELAY_270_V << IOMUX_MSPI_PIN_REG_PSRAM_DQS_0_DELAY_270_S)
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_DQS_0_DELAY_270_V 0x0000000FU
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_DQS_0_DELAY_270_S 18
|
||||
/** IOMUX_MSPI_PIN_REG_PSRAM_DQS_HOLD : R/W; bitpos: [22]; default: 0;
|
||||
* psram dqs hold
|
||||
*/
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_DQS_HOLD (BIT(22))
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_DQS_HOLD_M (IOMUX_MSPI_PIN_REG_PSRAM_DQS_HOLD_V << IOMUX_MSPI_PIN_REG_PSRAM_DQS_HOLD_S)
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_DQS_HOLD_V 0x00000001U
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_DQS_HOLD_S 22
|
||||
|
||||
/** IOMUX_MSPI_PIN_PSRAM_CK_PIN0_REG register
|
||||
* IOMUX_MSPI_PIN_PSRAM_D_PIN0_REG
|
||||
*/
|
||||
#define IOMUX_MSPI_PIN_PSRAM_CK_PIN0_REG (DR_REG_IOMUX_MSPI_PIN_BASE + 0x40)
|
||||
/** IOMUX_MSPI_PIN_REG_PSRAM_CK_DLI : R/W; bitpos: [3:0]; default: 0;
|
||||
* psram ck dli
|
||||
*/
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_CK_DLI 0x0000000FU
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_CK_DLI_M (IOMUX_MSPI_PIN_REG_PSRAM_CK_DLI_V << IOMUX_MSPI_PIN_REG_PSRAM_CK_DLI_S)
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_CK_DLI_V 0x0000000FU
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_CK_DLI_S 0
|
||||
/** IOMUX_MSPI_PIN_REG_PSRAM_CK_DLC : R/W; bitpos: [7:4]; default: 0;
|
||||
* psram ck dlc
|
||||
*/
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_CK_DLC 0x0000000FU
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_CK_DLC_M (IOMUX_MSPI_PIN_REG_PSRAM_CK_DLC_V << IOMUX_MSPI_PIN_REG_PSRAM_CK_DLC_S)
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_CK_DLC_V 0x0000000FU
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_CK_DLC_S 4
|
||||
/** IOMUX_MSPI_PIN_REG_PSRAM_CK_HYS : R/W; bitpos: [8]; default: 0;
|
||||
* psram ck sl
|
||||
*/
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_CK_HYS (BIT(8))
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_CK_HYS_M (IOMUX_MSPI_PIN_REG_PSRAM_CK_HYS_V << IOMUX_MSPI_PIN_REG_PSRAM_CK_HYS_S)
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_CK_HYS_V 0x00000001U
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_CK_HYS_S 8
|
||||
/** IOMUX_MSPI_PIN_REG_PSRAM_CK_IE : R/W; bitpos: [9]; default: 0;
|
||||
* Reserved
|
||||
*/
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_CK_IE (BIT(9))
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_CK_IE_M (IOMUX_MSPI_PIN_REG_PSRAM_CK_IE_V << IOMUX_MSPI_PIN_REG_PSRAM_CK_IE_S)
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_CK_IE_V 0x00000001U
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_CK_IE_S 9
|
||||
/** IOMUX_MSPI_PIN_REG_PSRAM_CK_WPU : R/W; bitpos: [10]; default: 0;
|
||||
* psram ck wpu
|
||||
*/
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_CK_WPU (BIT(10))
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_CK_WPU_M (IOMUX_MSPI_PIN_REG_PSRAM_CK_WPU_V << IOMUX_MSPI_PIN_REG_PSRAM_CK_WPU_S)
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_CK_WPU_V 0x00000001U
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_CK_WPU_S 10
|
||||
/** IOMUX_MSPI_PIN_REG_PSRAM_CK_WPD : R/W; bitpos: [11]; default: 0;
|
||||
* psram ck wpd
|
||||
*/
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_CK_WPD (BIT(11))
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_CK_WPD_M (IOMUX_MSPI_PIN_REG_PSRAM_CK_WPD_V << IOMUX_MSPI_PIN_REG_PSRAM_CK_WPD_S)
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_CK_WPD_V 0x00000001U
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_CK_WPD_S 11
|
||||
/** IOMUX_MSPI_PIN_REG_PSRAM_CK_DRV : R/W; bitpos: [14:12]; default: 4;
|
||||
* psram ck drv
|
||||
*/
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_CK_DRV 0x00000007U
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_CK_DRV_M (IOMUX_MSPI_PIN_REG_PSRAM_CK_DRV_V << IOMUX_MSPI_PIN_REG_PSRAM_CK_DRV_S)
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_CK_DRV_V 0x00000007U
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_CK_DRV_S 12
|
||||
/** IOMUX_MSPI_PIN_REG_PSRAM_CK_HOLD : R/W; bitpos: [15]; default: 0;
|
||||
* psram ck hold
|
||||
*/
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_CK_HOLD (BIT(15))
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_CK_HOLD_M (IOMUX_MSPI_PIN_REG_PSRAM_CK_HOLD_V << IOMUX_MSPI_PIN_REG_PSRAM_CK_HOLD_S)
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_CK_HOLD_V 0x00000001U
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_CK_HOLD_S 15
|
||||
|
||||
/** IOMUX_MSPI_PIN_PSRAM_CS_PIN0_REG register
|
||||
* IOMUX_MSPI_PIN_PSRAM_D_PIN0_REG
|
||||
*/
|
||||
#define IOMUX_MSPI_PIN_PSRAM_CS_PIN0_REG (DR_REG_IOMUX_MSPI_PIN_BASE + 0x44)
|
||||
/** IOMUX_MSPI_PIN_REG_PSRAM_CS_DLI : R/W; bitpos: [3:0]; default: 0;
|
||||
* psram cs dli
|
||||
*/
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_CS_DLI 0x0000000FU
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_CS_DLI_M (IOMUX_MSPI_PIN_REG_PSRAM_CS_DLI_V << IOMUX_MSPI_PIN_REG_PSRAM_CS_DLI_S)
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_CS_DLI_V 0x0000000FU
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_CS_DLI_S 0
|
||||
/** IOMUX_MSPI_PIN_REG_PSRAM_CS_DLC : R/W; bitpos: [7:4]; default: 0;
|
||||
* psram cs dlc
|
||||
*/
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_CS_DLC 0x0000000FU
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_CS_DLC_M (IOMUX_MSPI_PIN_REG_PSRAM_CS_DLC_V << IOMUX_MSPI_PIN_REG_PSRAM_CS_DLC_S)
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_CS_DLC_V 0x0000000FU
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_CS_DLC_S 4
|
||||
/** IOMUX_MSPI_PIN_REG_PSRAM_CS_HYS : R/W; bitpos: [8]; default: 0;
|
||||
* psram cs sl
|
||||
*/
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_CS_HYS (BIT(8))
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_CS_HYS_M (IOMUX_MSPI_PIN_REG_PSRAM_CS_HYS_V << IOMUX_MSPI_PIN_REG_PSRAM_CS_HYS_S)
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_CS_HYS_V 0x00000001U
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_CS_HYS_S 8
|
||||
/** IOMUX_MSPI_PIN_REG_PSRAM_CS_IE : R/W; bitpos: [9]; default: 0;
|
||||
* Reserved
|
||||
*/
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_CS_IE (BIT(9))
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_CS_IE_M (IOMUX_MSPI_PIN_REG_PSRAM_CS_IE_V << IOMUX_MSPI_PIN_REG_PSRAM_CS_IE_S)
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_CS_IE_V 0x00000001U
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_CS_IE_S 9
|
||||
/** IOMUX_MSPI_PIN_REG_PSRAM_CS_WPU : R/W; bitpos: [10]; default: 0;
|
||||
* psram cs wpu
|
||||
*/
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_CS_WPU (BIT(10))
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_CS_WPU_M (IOMUX_MSPI_PIN_REG_PSRAM_CS_WPU_V << IOMUX_MSPI_PIN_REG_PSRAM_CS_WPU_S)
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_CS_WPU_V 0x00000001U
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_CS_WPU_S 10
|
||||
/** IOMUX_MSPI_PIN_REG_PSRAM_CS_WPD : R/W; bitpos: [11]; default: 0;
|
||||
* psram cs wpd
|
||||
*/
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_CS_WPD (BIT(11))
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_CS_WPD_M (IOMUX_MSPI_PIN_REG_PSRAM_CS_WPD_V << IOMUX_MSPI_PIN_REG_PSRAM_CS_WPD_S)
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_CS_WPD_V 0x00000001U
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_CS_WPD_S 11
|
||||
/** IOMUX_MSPI_PIN_REG_PSRAM_CS_DRV : R/W; bitpos: [14:12]; default: 4;
|
||||
* psram cs drv
|
||||
*/
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_CS_DRV 0x00000007U
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_CS_DRV_M (IOMUX_MSPI_PIN_REG_PSRAM_CS_DRV_V << IOMUX_MSPI_PIN_REG_PSRAM_CS_DRV_S)
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_CS_DRV_V 0x00000007U
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_CS_DRV_S 12
|
||||
/** IOMUX_MSPI_PIN_REG_PSRAM_CS_HOLD : R/W; bitpos: [15]; default: 0;
|
||||
* psram cs hold
|
||||
*/
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_CS_HOLD (BIT(15))
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_CS_HOLD_M (IOMUX_MSPI_PIN_REG_PSRAM_CS_HOLD_V << IOMUX_MSPI_PIN_REG_PSRAM_CS_HOLD_S)
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_CS_HOLD_V 0x00000001U
|
||||
#define IOMUX_MSPI_PIN_REG_PSRAM_CS_HOLD_S 15
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
551
components/soc/esp32s31/register/soc/iomux_mspi_pin_struct.h
Normal file
551
components/soc/esp32s31/register/soc/iomux_mspi_pin_struct.h
Normal file
@@ -0,0 +1,551 @@
|
||||
/**
|
||||
* SPDX-FileCopyrightText: 2025 Espressif Systems (Shanghai) CO LTD
|
||||
*
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
*/
|
||||
#pragma once
|
||||
|
||||
#include <stdint.h>
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
/** Group: clk_en */
|
||||
/** Type of clk_en0 register
|
||||
* apb registers auto clock gating reg
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** reg_clk_en : R/W; bitpos: [0]; default: 1;
|
||||
* 1: auto clock gating on
|
||||
* 0: auto clock gating off
|
||||
*/
|
||||
uint32_t reg_clk_en:1;
|
||||
uint32_t reserved_1:31;
|
||||
};
|
||||
uint32_t val;
|
||||
} iomux_mspi_pin_clk_en0_reg_t;
|
||||
|
||||
|
||||
/** Group: psram_d_pin */
|
||||
/** Type of psram_d_pin0 register
|
||||
* IOMUX_MSPI_PIN_PSRAM_D_PIN0_REG
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** reg_psram_d_dli : R/W; bitpos: [3:0]; default: 0;
|
||||
* psram d dli
|
||||
*/
|
||||
uint32_t reg_psram_d_dli:4;
|
||||
/** reg_psram_d_dlc : R/W; bitpos: [7:4]; default: 0;
|
||||
* psram d dlc
|
||||
*/
|
||||
uint32_t reg_psram_d_dlc:4;
|
||||
/** reg_psram_d_hys : R/W; bitpos: [8]; default: 0;
|
||||
* psram d sl
|
||||
*/
|
||||
uint32_t reg_psram_d_hys:1;
|
||||
/** reg_psram_d_ie : R/W; bitpos: [9]; default: 0;
|
||||
* Reserved
|
||||
*/
|
||||
uint32_t reg_psram_d_ie:1;
|
||||
/** reg_psram_d_wpu : R/W; bitpos: [10]; default: 0;
|
||||
* psram d wpu
|
||||
*/
|
||||
uint32_t reg_psram_d_wpu:1;
|
||||
/** reg_psram_d_wpd : R/W; bitpos: [11]; default: 0;
|
||||
* psram d wpd
|
||||
*/
|
||||
uint32_t reg_psram_d_wpd:1;
|
||||
/** reg_psram_d_drv : R/W; bitpos: [14:12]; default: 4;
|
||||
* psram d drv
|
||||
*/
|
||||
uint32_t reg_psram_d_drv:3;
|
||||
/** reg_psram_d_hold : R/W; bitpos: [15]; default: 0;
|
||||
* psram d hold
|
||||
*/
|
||||
uint32_t reg_psram_d_hold:1;
|
||||
uint32_t reserved_16:16;
|
||||
};
|
||||
uint32_t val;
|
||||
} iomux_mspi_pin_psram_d_pin0_reg_t;
|
||||
|
||||
|
||||
/** Group: psram_q_pin */
|
||||
/** Type of psram_q_pin0 register
|
||||
* IOMUX_MSPI_PIN_PSRAM_D_PIN0_REG
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** reg_psram_q_dli : R/W; bitpos: [3:0]; default: 0;
|
||||
* psram q dli
|
||||
*/
|
||||
uint32_t reg_psram_q_dli:4;
|
||||
/** reg_psram_q_dlc : R/W; bitpos: [7:4]; default: 0;
|
||||
* psram q dlc
|
||||
*/
|
||||
uint32_t reg_psram_q_dlc:4;
|
||||
/** reg_psram_q_hys : R/W; bitpos: [8]; default: 0;
|
||||
* psram q sl
|
||||
*/
|
||||
uint32_t reg_psram_q_hys:1;
|
||||
/** reg_psram_q_ie : R/W; bitpos: [9]; default: 0;
|
||||
* Reserved
|
||||
*/
|
||||
uint32_t reg_psram_q_ie:1;
|
||||
/** reg_psram_q_wpu : R/W; bitpos: [10]; default: 0;
|
||||
* psram q wpu
|
||||
*/
|
||||
uint32_t reg_psram_q_wpu:1;
|
||||
/** reg_psram_q_wpd : R/W; bitpos: [11]; default: 0;
|
||||
* psram q wpd
|
||||
*/
|
||||
uint32_t reg_psram_q_wpd:1;
|
||||
/** reg_psram_q_drv : R/W; bitpos: [14:12]; default: 4;
|
||||
* psram q drv
|
||||
*/
|
||||
uint32_t reg_psram_q_drv:3;
|
||||
/** reg_psram_q_hold : R/W; bitpos: [15]; default: 0;
|
||||
* psram q hold
|
||||
*/
|
||||
uint32_t reg_psram_q_hold:1;
|
||||
uint32_t reserved_16:16;
|
||||
};
|
||||
uint32_t val;
|
||||
} iomux_mspi_pin_psram_q_pin0_reg_t;
|
||||
|
||||
|
||||
/** Group: psram_wp_pin */
|
||||
/** Type of psram_wp_pin0 register
|
||||
* IOMUX_MSPI_PIN_PSRAM_D_PIN0_REG
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** reg_psram_wp_dli : R/W; bitpos: [3:0]; default: 0;
|
||||
* psram wp dli
|
||||
*/
|
||||
uint32_t reg_psram_wp_dli:4;
|
||||
/** reg_psram_wp_dlc : R/W; bitpos: [7:4]; default: 0;
|
||||
* psram wp dlc
|
||||
*/
|
||||
uint32_t reg_psram_wp_dlc:4;
|
||||
/** reg_psram_wp_hys : R/W; bitpos: [8]; default: 0;
|
||||
* psram wp sl
|
||||
*/
|
||||
uint32_t reg_psram_wp_hys:1;
|
||||
/** reg_psram_wp_ie : R/W; bitpos: [9]; default: 0;
|
||||
* Reserved
|
||||
*/
|
||||
uint32_t reg_psram_wp_ie:1;
|
||||
/** reg_psram_wp_wpu : R/W; bitpos: [10]; default: 0;
|
||||
* psram wp wpu
|
||||
*/
|
||||
uint32_t reg_psram_wp_wpu:1;
|
||||
/** reg_psram_wp_wpd : R/W; bitpos: [11]; default: 0;
|
||||
* psram wp wpd
|
||||
*/
|
||||
uint32_t reg_psram_wp_wpd:1;
|
||||
/** reg_psram_wp_drv : R/W; bitpos: [14:12]; default: 4;
|
||||
* psram wp drv
|
||||
*/
|
||||
uint32_t reg_psram_wp_drv:3;
|
||||
/** reg_psram_wp_hold : R/W; bitpos: [15]; default: 0;
|
||||
* psram wp hold
|
||||
*/
|
||||
uint32_t reg_psram_wp_hold:1;
|
||||
uint32_t reserved_16:16;
|
||||
};
|
||||
uint32_t val;
|
||||
} iomux_mspi_pin_psram_wp_pin0_reg_t;
|
||||
|
||||
|
||||
/** Group: psram_hold_pin */
|
||||
/** Type of psram_hold_pin0 register
|
||||
* IOMUX_MSPI_PIN_PSRAM_D_PIN0_REG
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** reg_psram_hold_dli : R/W; bitpos: [3:0]; default: 0;
|
||||
* psram hold dli
|
||||
*/
|
||||
uint32_t reg_psram_hold_dli:4;
|
||||
/** reg_psram_hold_dlc : R/W; bitpos: [7:4]; default: 0;
|
||||
* psram hold dlc
|
||||
*/
|
||||
uint32_t reg_psram_hold_dlc:4;
|
||||
/** reg_psram_hold_hys : R/W; bitpos: [8]; default: 0;
|
||||
* psram hold sl
|
||||
*/
|
||||
uint32_t reg_psram_hold_hys:1;
|
||||
/** reg_psram_hold_ie : R/W; bitpos: [9]; default: 0;
|
||||
* Reserved
|
||||
*/
|
||||
uint32_t reg_psram_hold_ie:1;
|
||||
/** reg_psram_hold_wpu : R/W; bitpos: [10]; default: 0;
|
||||
* psram hold wpu
|
||||
*/
|
||||
uint32_t reg_psram_hold_wpu:1;
|
||||
/** reg_psram_hold_wpd : R/W; bitpos: [11]; default: 0;
|
||||
* psram hold wpd
|
||||
*/
|
||||
uint32_t reg_psram_hold_wpd:1;
|
||||
/** reg_psram_hold_drv : R/W; bitpos: [14:12]; default: 4;
|
||||
* psram hold drv
|
||||
*/
|
||||
uint32_t reg_psram_hold_drv:3;
|
||||
/** reg_psram_hold_hold : R/W; bitpos: [15]; default: 0;
|
||||
* psram hold hold
|
||||
*/
|
||||
uint32_t reg_psram_hold_hold:1;
|
||||
uint32_t reserved_16:16;
|
||||
};
|
||||
uint32_t val;
|
||||
} iomux_mspi_pin_psram_hold_pin0_reg_t;
|
||||
|
||||
|
||||
/** Group: psram_dq4_pin */
|
||||
/** Type of psram_dq4_pin0 register
|
||||
* IOMUX_MSPI_PIN_PSRAM_D_PIN0_REG
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** reg_psram_dq4_dli : R/W; bitpos: [3:0]; default: 0;
|
||||
* psram dq4 dli
|
||||
*/
|
||||
uint32_t reg_psram_dq4_dli:4;
|
||||
/** reg_psram_dq4_dlc : R/W; bitpos: [7:4]; default: 0;
|
||||
* psram dq4 dlc
|
||||
*/
|
||||
uint32_t reg_psram_dq4_dlc:4;
|
||||
/** reg_psram_dq4_hys : R/W; bitpos: [8]; default: 0;
|
||||
* psram dq4 sl
|
||||
*/
|
||||
uint32_t reg_psram_dq4_hys:1;
|
||||
/** reg_psram_dq4_ie : R/W; bitpos: [9]; default: 0;
|
||||
* Reserved
|
||||
*/
|
||||
uint32_t reg_psram_dq4_ie:1;
|
||||
/** reg_psram_dq4_wpu : R/W; bitpos: [10]; default: 0;
|
||||
* psram dq4 wpu
|
||||
*/
|
||||
uint32_t reg_psram_dq4_wpu:1;
|
||||
/** reg_psram_dq4_wpd : R/W; bitpos: [11]; default: 0;
|
||||
* psram dq4 wpd
|
||||
*/
|
||||
uint32_t reg_psram_dq4_wpd:1;
|
||||
/** reg_psram_dq4_drv : R/W; bitpos: [14:12]; default: 4;
|
||||
* psram dq4 drv
|
||||
*/
|
||||
uint32_t reg_psram_dq4_drv:3;
|
||||
/** reg_psram_dq4_hold : R/W; bitpos: [15]; default: 0;
|
||||
* psram dq4 hold
|
||||
*/
|
||||
uint32_t reg_psram_dq4_hold:1;
|
||||
uint32_t reserved_16:16;
|
||||
};
|
||||
uint32_t val;
|
||||
} iomux_mspi_pin_psram_dq4_pin0_reg_t;
|
||||
|
||||
|
||||
/** Group: psram_dq5_pin */
|
||||
/** Type of psram_dq5_pin0 register
|
||||
* IOMUX_MSPI_PIN_PSRAM_D_PIN0_REG
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** reg_psram_dq5_dli : R/W; bitpos: [3:0]; default: 0;
|
||||
* psram dq5 dli
|
||||
*/
|
||||
uint32_t reg_psram_dq5_dli:4;
|
||||
/** reg_psram_dq5_dlc : R/W; bitpos: [7:4]; default: 0;
|
||||
* psram dq5 dlc
|
||||
*/
|
||||
uint32_t reg_psram_dq5_dlc:4;
|
||||
/** reg_psram_dq5_hys : R/W; bitpos: [8]; default: 0;
|
||||
* psram dq5 sl
|
||||
*/
|
||||
uint32_t reg_psram_dq5_hys:1;
|
||||
/** reg_psram_dq5_ie : R/W; bitpos: [9]; default: 0;
|
||||
* Reserved
|
||||
*/
|
||||
uint32_t reg_psram_dq5_ie:1;
|
||||
/** reg_psram_dq5_wpu : R/W; bitpos: [10]; default: 0;
|
||||
* psram dq5 wpu
|
||||
*/
|
||||
uint32_t reg_psram_dq5_wpu:1;
|
||||
/** reg_psram_dq5_wpd : R/W; bitpos: [11]; default: 0;
|
||||
* psram dq5 wpd
|
||||
*/
|
||||
uint32_t reg_psram_dq5_wpd:1;
|
||||
/** reg_psram_dq5_drv : R/W; bitpos: [14:12]; default: 4;
|
||||
* psram dq5 drv
|
||||
*/
|
||||
uint32_t reg_psram_dq5_drv:3;
|
||||
/** reg_psram_dq5_hold : R/W; bitpos: [15]; default: 0;
|
||||
* psram dq5 hold
|
||||
*/
|
||||
uint32_t reg_psram_dq5_hold:1;
|
||||
uint32_t reserved_16:16;
|
||||
};
|
||||
uint32_t val;
|
||||
} iomux_mspi_pin_psram_dq5_pin0_reg_t;
|
||||
|
||||
|
||||
/** Group: psram_dq6_pin */
|
||||
/** Type of psram_dq6_pin0 register
|
||||
* IOMUX_MSPI_PIN_PSRAM_D_PIN0_REG
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** reg_psram_dq6_dli : R/W; bitpos: [3:0]; default: 0;
|
||||
* psram dq6 dli
|
||||
*/
|
||||
uint32_t reg_psram_dq6_dli:4;
|
||||
/** reg_psram_dq6_dlc : R/W; bitpos: [7:4]; default: 0;
|
||||
* psram dq6 dlc
|
||||
*/
|
||||
uint32_t reg_psram_dq6_dlc:4;
|
||||
/** reg_psram_dq6_hys : R/W; bitpos: [8]; default: 0;
|
||||
* psram dq6 sl
|
||||
*/
|
||||
uint32_t reg_psram_dq6_hys:1;
|
||||
/** reg_psram_dq6_ie : R/W; bitpos: [9]; default: 0;
|
||||
* Reserved
|
||||
*/
|
||||
uint32_t reg_psram_dq6_ie:1;
|
||||
/** reg_psram_dq6_wpu : R/W; bitpos: [10]; default: 0;
|
||||
* psram dq6 wpu
|
||||
*/
|
||||
uint32_t reg_psram_dq6_wpu:1;
|
||||
/** reg_psram_dq6_wpd : R/W; bitpos: [11]; default: 0;
|
||||
* psram dq6 wpd
|
||||
*/
|
||||
uint32_t reg_psram_dq6_wpd:1;
|
||||
/** reg_psram_dq6_drv : R/W; bitpos: [14:12]; default: 4;
|
||||
* psram dq6 drv
|
||||
*/
|
||||
uint32_t reg_psram_dq6_drv:3;
|
||||
/** reg_psram_dq6_hold : R/W; bitpos: [15]; default: 0;
|
||||
* psram dq6 hold
|
||||
*/
|
||||
uint32_t reg_psram_dq6_hold:1;
|
||||
uint32_t reserved_16:16;
|
||||
};
|
||||
uint32_t val;
|
||||
} iomux_mspi_pin_psram_dq6_pin0_reg_t;
|
||||
|
||||
|
||||
/** Group: psram_dq7_pin */
|
||||
/** Type of psram_dq7_pin0 register
|
||||
* IOMUX_MSPI_PIN_PSRAM_D_PIN0_REG
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** reg_psram_dq7_dli : R/W; bitpos: [3:0]; default: 0;
|
||||
* psram dq7 dli
|
||||
*/
|
||||
uint32_t reg_psram_dq7_dli:4;
|
||||
/** reg_psram_dq7_dlc : R/W; bitpos: [7:4]; default: 0;
|
||||
* psram dq7 dlc
|
||||
*/
|
||||
uint32_t reg_psram_dq7_dlc:4;
|
||||
/** reg_psram_dq7_hys : R/W; bitpos: [8]; default: 0;
|
||||
* psram dq7 sl
|
||||
*/
|
||||
uint32_t reg_psram_dq7_hys:1;
|
||||
/** reg_psram_dq7_ie : R/W; bitpos: [9]; default: 0;
|
||||
* Reserved
|
||||
*/
|
||||
uint32_t reg_psram_dq7_ie:1;
|
||||
/** reg_psram_dq7_wpu : R/W; bitpos: [10]; default: 0;
|
||||
* psram dq7 wpu
|
||||
*/
|
||||
uint32_t reg_psram_dq7_wpu:1;
|
||||
/** reg_psram_dq7_wpd : R/W; bitpos: [11]; default: 0;
|
||||
* psram dq7 wpd
|
||||
*/
|
||||
uint32_t reg_psram_dq7_wpd:1;
|
||||
/** reg_psram_dq7_drv : R/W; bitpos: [14:12]; default: 4;
|
||||
* psram dq7 drv
|
||||
*/
|
||||
uint32_t reg_psram_dq7_drv:3;
|
||||
/** reg_psram_dq7_hold : R/W; bitpos: [15]; default: 0;
|
||||
* psram dq7 hold
|
||||
*/
|
||||
uint32_t reg_psram_dq7_hold:1;
|
||||
uint32_t reserved_16:16;
|
||||
};
|
||||
uint32_t val;
|
||||
} iomux_mspi_pin_psram_dq7_pin0_reg_t;
|
||||
|
||||
|
||||
/** Group: psram_dqs_0_pin */
|
||||
/** Type of psram_dqs_0_pin0 register
|
||||
* IOMUX_MSPI_PIN_PSRAM_D_PIN0_REG
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** reg_psram_dqs_0_xpd : R/W; bitpos: [0]; default: 0;
|
||||
* psram xpd dqs0
|
||||
*/
|
||||
uint32_t reg_psram_dqs_0_xpd:1;
|
||||
/** reg_psram_dqs_0_phase : R/W; bitpos: [2:1]; default: 0;
|
||||
* psram dqs0 phase
|
||||
*/
|
||||
uint32_t reg_psram_dqs_0_phase:2;
|
||||
/** reg_psram_dqs_0_dli : R/W; bitpos: [6:3]; default: 0;
|
||||
* psram dqs0 dli
|
||||
*/
|
||||
uint32_t reg_psram_dqs_0_dli:4;
|
||||
/** reg_psram_dqs_0_delay_90 : R/W; bitpos: [10:7]; default: 0;
|
||||
* psram dqs0 delay 90
|
||||
*/
|
||||
uint32_t reg_psram_dqs_0_delay_90:4;
|
||||
/** reg_psram_dqs_0_hys : R/W; bitpos: [11]; default: 0;
|
||||
* psram dqs0 sl
|
||||
*/
|
||||
uint32_t reg_psram_dqs_0_hys:1;
|
||||
/** reg_psram_dqs_0_ie : R/W; bitpos: [12]; default: 0;
|
||||
* Reserved
|
||||
*/
|
||||
uint32_t reg_psram_dqs_0_ie:1;
|
||||
/** reg_psram_dqs_0_wpu : R/W; bitpos: [13]; default: 0;
|
||||
* psram dqs0 wpu
|
||||
*/
|
||||
uint32_t reg_psram_dqs_0_wpu:1;
|
||||
/** reg_psram_dqs_0_wpd : R/W; bitpos: [14]; default: 0;
|
||||
* psram dqs0 wpd
|
||||
*/
|
||||
uint32_t reg_psram_dqs_0_wpd:1;
|
||||
/** reg_psram_dqs_0_drv : R/W; bitpos: [17:15]; default: 4;
|
||||
* psram dqs0 drv
|
||||
*/
|
||||
uint32_t reg_psram_dqs_0_drv:3;
|
||||
/** reg_psram_dqs_0_delay_270 : R/W; bitpos: [21:18]; default: 0;
|
||||
* psram dqs0 delay 270
|
||||
*/
|
||||
uint32_t reg_psram_dqs_0_delay_270:4;
|
||||
/** reg_psram_dqs_hold : R/W; bitpos: [22]; default: 0;
|
||||
* psram dqs hold
|
||||
*/
|
||||
uint32_t reg_psram_dqs_hold:1;
|
||||
uint32_t reserved_23:9;
|
||||
};
|
||||
uint32_t val;
|
||||
} iomux_mspi_pin_psram_dqs_0_pin0_reg_t;
|
||||
|
||||
|
||||
/** Group: psram_ck_pin */
|
||||
/** Type of psram_ck_pin0 register
|
||||
* IOMUX_MSPI_PIN_PSRAM_D_PIN0_REG
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** reg_psram_ck_dli : R/W; bitpos: [3:0]; default: 0;
|
||||
* psram ck dli
|
||||
*/
|
||||
uint32_t reg_psram_ck_dli:4;
|
||||
/** reg_psram_ck_dlc : R/W; bitpos: [7:4]; default: 0;
|
||||
* psram ck dlc
|
||||
*/
|
||||
uint32_t reg_psram_ck_dlc:4;
|
||||
/** reg_psram_ck_hys : R/W; bitpos: [8]; default: 0;
|
||||
* psram ck sl
|
||||
*/
|
||||
uint32_t reg_psram_ck_hys:1;
|
||||
/** reg_psram_ck_ie : R/W; bitpos: [9]; default: 0;
|
||||
* Reserved
|
||||
*/
|
||||
uint32_t reg_psram_ck_ie:1;
|
||||
/** reg_psram_ck_wpu : R/W; bitpos: [10]; default: 0;
|
||||
* psram ck wpu
|
||||
*/
|
||||
uint32_t reg_psram_ck_wpu:1;
|
||||
/** reg_psram_ck_wpd : R/W; bitpos: [11]; default: 0;
|
||||
* psram ck wpd
|
||||
*/
|
||||
uint32_t reg_psram_ck_wpd:1;
|
||||
/** reg_psram_ck_drv : R/W; bitpos: [14:12]; default: 4;
|
||||
* psram ck drv
|
||||
*/
|
||||
uint32_t reg_psram_ck_drv:3;
|
||||
/** reg_psram_ck_hold : R/W; bitpos: [15]; default: 0;
|
||||
* psram ck hold
|
||||
*/
|
||||
uint32_t reg_psram_ck_hold:1;
|
||||
uint32_t reserved_16:16;
|
||||
};
|
||||
uint32_t val;
|
||||
} iomux_mspi_pin_psram_ck_pin0_reg_t;
|
||||
|
||||
|
||||
/** Group: psram_cs_pin */
|
||||
/** Type of psram_cs_pin0 register
|
||||
* IOMUX_MSPI_PIN_PSRAM_D_PIN0_REG
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** reg_psram_cs_dli : R/W; bitpos: [3:0]; default: 0;
|
||||
* psram cs dli
|
||||
*/
|
||||
uint32_t reg_psram_cs_dli:4;
|
||||
/** reg_psram_cs_dlc : R/W; bitpos: [7:4]; default: 0;
|
||||
* psram cs dlc
|
||||
*/
|
||||
uint32_t reg_psram_cs_dlc:4;
|
||||
/** reg_psram_cs_hys : R/W; bitpos: [8]; default: 0;
|
||||
* psram cs sl
|
||||
*/
|
||||
uint32_t reg_psram_cs_hys:1;
|
||||
/** reg_psram_cs_ie : R/W; bitpos: [9]; default: 0;
|
||||
* Reserved
|
||||
*/
|
||||
uint32_t reg_psram_cs_ie:1;
|
||||
/** reg_psram_cs_wpu : R/W; bitpos: [10]; default: 0;
|
||||
* psram cs wpu
|
||||
*/
|
||||
uint32_t reg_psram_cs_wpu:1;
|
||||
/** reg_psram_cs_wpd : R/W; bitpos: [11]; default: 0;
|
||||
* psram cs wpd
|
||||
*/
|
||||
uint32_t reg_psram_cs_wpd:1;
|
||||
/** reg_psram_cs_drv : R/W; bitpos: [14:12]; default: 4;
|
||||
* psram cs drv
|
||||
*/
|
||||
uint32_t reg_psram_cs_drv:3;
|
||||
/** reg_psram_cs_hold : R/W; bitpos: [15]; default: 0;
|
||||
* psram cs hold
|
||||
*/
|
||||
uint32_t reg_psram_cs_hold:1;
|
||||
uint32_t reserved_16:16;
|
||||
};
|
||||
uint32_t val;
|
||||
} iomux_mspi_pin_psram_cs_pin0_reg_t;
|
||||
|
||||
|
||||
typedef struct {
|
||||
volatile iomux_mspi_pin_clk_en0_reg_t clk_en0;
|
||||
uint32_t reserved_004[6];
|
||||
volatile iomux_mspi_pin_psram_d_pin0_reg_t psram_d_pin0;
|
||||
volatile iomux_mspi_pin_psram_q_pin0_reg_t psram_q_pin0;
|
||||
volatile iomux_mspi_pin_psram_wp_pin0_reg_t psram_wp_pin0;
|
||||
volatile iomux_mspi_pin_psram_hold_pin0_reg_t psram_hold_pin0;
|
||||
volatile iomux_mspi_pin_psram_dq4_pin0_reg_t psram_dq4_pin0;
|
||||
volatile iomux_mspi_pin_psram_dq5_pin0_reg_t psram_dq5_pin0;
|
||||
volatile iomux_mspi_pin_psram_dq6_pin0_reg_t psram_dq6_pin0;
|
||||
volatile iomux_mspi_pin_psram_dq7_pin0_reg_t psram_dq7_pin0;
|
||||
volatile iomux_mspi_pin_psram_dqs_0_pin0_reg_t psram_dqs_0_pin0;
|
||||
volatile iomux_mspi_pin_psram_ck_pin0_reg_t psram_ck_pin0;
|
||||
volatile iomux_mspi_pin_psram_cs_pin0_reg_t psram_cs_pin0;
|
||||
} iomux_mspi_pin_dev_t;
|
||||
|
||||
extern iomux_mspi_pin_dev_t MSPI_IOMUX;
|
||||
|
||||
|
||||
#ifndef __cplusplus
|
||||
_Static_assert(sizeof(iomux_mspi_pin_dev_t) == 0x48, "Invalid size of iomux_mspi_pin_dev_t structure");
|
||||
#endif
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
Reference in New Issue
Block a user