mirror of
https://github.com/espressif/esp-idf.git
synced 2026-01-19 08:35:36 +00:00
Merge branch 'feat/support_parlio_cs_on_p4_eco5' into 'master'
feat(parlio_tx): support cs signal on esp32p4 eco5 Closes IDF-13519 and IDF-12219 See merge request espressif/esp-idf!41787
This commit is contained in:
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* SPDX-FileCopyrightText: 2023-2024 Espressif Systems (Shanghai) CO LTD
|
||||
* SPDX-FileCopyrightText: 2023-2025 Espressif Systems (Shanghai) CO LTD
|
||||
*
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
*/
|
||||
@@ -68,6 +68,14 @@ extern "C" {
|
||||
#define TEST_DATA5_GPIO 29
|
||||
#define TEST_DATA6_GPIO 30
|
||||
#define TEST_DATA7_GPIO 31
|
||||
#define TEST_DATA8_GPIO 35
|
||||
#define TEST_DATA9_GPIO 36
|
||||
#define TEST_DATA10_GPIO 39
|
||||
#define TEST_DATA11_GPIO 40
|
||||
#define TEST_DATA12_GPIO 41
|
||||
#define TEST_DATA13_GPIO 42
|
||||
#define TEST_DATA14_GPIO 43
|
||||
#define TEST_DATA15_GPIO 44
|
||||
#else
|
||||
#error "Unsupported target"
|
||||
#endif
|
||||
|
||||
@@ -294,18 +294,10 @@ TEST_CASE("parallel_tx_clock_gating", "[paralio_tx]")
|
||||
#if !PARLIO_LL_TX_DATA_LINE_AS_VALID_SIG
|
||||
TEST_CASE("parallel_tx_clock_gating_and_msb_coexist", "[paralio_tx]")
|
||||
{
|
||||
printf("init a gpio to read parlio_tx clk output\r\n");
|
||||
gpio_config_t test_gpio_conf = {
|
||||
.mode = GPIO_MODE_INPUT,
|
||||
.pin_bit_mask = BIT64(TEST_CLK_GPIO) | BIT64(TEST_DATA7_GPIO),
|
||||
};
|
||||
TEST_ESP_OK(gpio_config(&test_gpio_conf));
|
||||
|
||||
printf("install parlio tx unit\r\n");
|
||||
parlio_tx_unit_handle_t tx_unit = NULL;
|
||||
parlio_tx_unit_config_t config = {
|
||||
.clk_src = PARLIO_CLK_SRC_DEFAULT,
|
||||
.data_width = 8,
|
||||
.data_width = PARLIO_TX_UNIT_MAX_DATA_WIDTH,
|
||||
.clk_in_gpio_num = -1, // use internal clock source
|
||||
.valid_gpio_num = TEST_VALID_GPIO, // generate the valid signal
|
||||
.clk_out_gpio_num = TEST_CLK_GPIO,
|
||||
@@ -318,6 +310,16 @@ TEST_CASE("parallel_tx_clock_gating_and_msb_coexist", "[paralio_tx]")
|
||||
TEST_DATA5_GPIO,
|
||||
TEST_DATA6_GPIO,
|
||||
TEST_DATA7_GPIO,
|
||||
#if PARLIO_TX_UNIT_MAX_DATA_WIDTH > 8
|
||||
TEST_DATA8_GPIO,
|
||||
TEST_DATA9_GPIO,
|
||||
TEST_DATA10_GPIO,
|
||||
TEST_DATA11_GPIO,
|
||||
TEST_DATA12_GPIO,
|
||||
TEST_DATA13_GPIO,
|
||||
TEST_DATA14_GPIO,
|
||||
TEST_DATA15_GPIO,
|
||||
#endif
|
||||
},
|
||||
.output_clk_freq_hz = 1 * 1000 * 1000,
|
||||
.trans_queue_depth = 4,
|
||||
@@ -328,13 +330,23 @@ TEST_CASE("parallel_tx_clock_gating_and_msb_coexist", "[paralio_tx]")
|
||||
.valid_stop_delay = 5,
|
||||
.flags.clk_gate_en = true, // enable clock gating, controlled by the CS signal
|
||||
};
|
||||
|
||||
printf("init a gpio to read parlio_tx clk output\r\n");
|
||||
gpio_num_t msb_gpio_num = config.data_gpio_nums[PARLIO_TX_UNIT_MAX_DATA_WIDTH - 1];
|
||||
gpio_config_t test_gpio_conf = {
|
||||
.mode = GPIO_MODE_INPUT,
|
||||
.pin_bit_mask = BIT64(TEST_CLK_GPIO) | BIT64(msb_gpio_num),
|
||||
};
|
||||
TEST_ESP_OK(gpio_config(&test_gpio_conf));
|
||||
|
||||
printf("install parlio tx unit\r\n");
|
||||
TEST_ESP_OK(parlio_new_tx_unit(&config, &tx_unit));
|
||||
TEST_ESP_OK(parlio_tx_unit_enable(tx_unit));
|
||||
|
||||
printf("send packets and see if the clock is gated when there's no transaction on line\r\n");
|
||||
parlio_transmit_config_t transmit_config = {
|
||||
// set the idle value to 0x80, so that the MSB is high when there's no transaction
|
||||
.idle_value = 0x80,
|
||||
// set the idle value to 1 << (PARLIO_TX_UNIT_MAX_DATA_WIDTH - 1), so that the MSB is high when there's no transaction
|
||||
.idle_value = 1 << (PARLIO_TX_UNIT_MAX_DATA_WIDTH - 1),
|
||||
};
|
||||
uint32_t size = 256;
|
||||
__attribute__((aligned(64))) uint8_t payload[size];
|
||||
@@ -345,16 +357,17 @@ TEST_CASE("parallel_tx_clock_gating_and_msb_coexist", "[paralio_tx]")
|
||||
TEST_ESP_OK(parlio_tx_unit_wait_all_done(tx_unit, -1));
|
||||
// check if the level on the clock line is low
|
||||
TEST_ASSERT_EQUAL(0, gpio_get_level(TEST_CLK_GPIO));
|
||||
TEST_ASSERT_EQUAL(1, gpio_get_level(TEST_DATA7_GPIO));
|
||||
TEST_ASSERT_EQUAL(1, gpio_get_level(msb_gpio_num));
|
||||
TEST_ESP_OK(parlio_tx_unit_transmit(tx_unit, payload, size * sizeof(uint8_t) * 8, &transmit_config));
|
||||
TEST_ESP_OK(parlio_tx_unit_wait_all_done(tx_unit, -1));
|
||||
TEST_ASSERT_EQUAL(0, gpio_get_level(TEST_CLK_GPIO));
|
||||
TEST_ASSERT_EQUAL(0, gpio_get_level(TEST_CLK_GPIO));
|
||||
TEST_ASSERT_EQUAL(1, gpio_get_level(TEST_DATA7_GPIO));
|
||||
TEST_ASSERT_EQUAL(1, gpio_get_level(msb_gpio_num));
|
||||
|
||||
TEST_ESP_OK(parlio_tx_unit_disable(tx_unit));
|
||||
TEST_ESP_OK(parlio_del_tx_unit(tx_unit));
|
||||
TEST_ESP_OK(gpio_reset_pin(TEST_CLK_GPIO));
|
||||
TEST_ESP_OK(gpio_reset_pin(msb_gpio_num));
|
||||
}
|
||||
#endif // !PARLIO_LL_TX_DATA_LINE_AS_VALID_SIG
|
||||
#endif // SOC_PARLIO_TX_CLK_SUPPORT_GATING
|
||||
|
||||
@@ -14,6 +14,7 @@
|
||||
#include "hal/misc.h"
|
||||
#include "hal/parlio_types.h"
|
||||
#include "hal/hal_utils.h"
|
||||
#include "hal/config.h"
|
||||
#include "soc/hp_sys_clkrst_struct.h"
|
||||
#include "soc/lp_clkrst_struct.h"
|
||||
#include "soc/parl_io_struct.h"
|
||||
@@ -33,9 +34,17 @@
|
||||
#define PARLIO_LL_EVENT_TX_MASK (PARLIO_LL_EVENT_TX_FIFO_EMPTY | PARLIO_LL_EVENT_TX_EOF)
|
||||
#define PARLIO_LL_EVENT_RX_MASK (PARLIO_LL_EVENT_RX_FIFO_FULL)
|
||||
|
||||
|
||||
#if HAL_CONFIG(CHIP_SUPPORT_MIN_REV) < 300
|
||||
#define PARLIO_LL_TX_DATA_LINE_AS_VALID_SIG 15 // TXD[15] can be used a valid signal
|
||||
#endif
|
||||
|
||||
#define PARLIO_LL_TX_DATA_LINE_AS_CLK_GATE 15 // TXD[15] can be used as clock gate signal
|
||||
|
||||
#if HAL_CONFIG(CHIP_SUPPORT_MIN_REV) >= 300
|
||||
#define PARLIO_LL_TX_VALID_MAX_DELAY 32767
|
||||
#endif
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
@@ -553,23 +562,6 @@ static inline void parlio_ll_tx_set_trans_bit_len(parl_io_dev_t *dev, uint32_t b
|
||||
dev->tx_data_cfg.tx_bitlen = bitlen;
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief Set TX valid signal delay
|
||||
*
|
||||
* @param dev Parallel IO register base address
|
||||
* @param start_delay Number of clock cycles to delay
|
||||
* @param stop_delay Number of clock cycles to delay
|
||||
* @return true: success, false: valid delay is not supported
|
||||
*/
|
||||
static inline bool parlio_ll_tx_set_valid_delay(parl_io_dev_t *dev, uint32_t start_delay, uint32_t stop_delay)
|
||||
{
|
||||
(void)dev;
|
||||
if (start_delay == 0 && stop_delay == 0) {
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief Check if tx size can be determined by DMA
|
||||
*
|
||||
@@ -621,19 +613,6 @@ static inline void parlio_ll_tx_start(parl_io_dev_t *dev, bool en)
|
||||
dev->tx_start_cfg.tx_start = en;
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief Whether to treat the MSB of TXD as the valid signal
|
||||
*
|
||||
* @note If enabled, TXD[15] will work as valid signal, which stay high during data transmission.
|
||||
*
|
||||
* @param dev Parallel IO register base address
|
||||
* @param en True to enable, False to disable
|
||||
*/
|
||||
static inline void parlio_ll_tx_treat_msb_as_valid(parl_io_dev_t *dev, bool en)
|
||||
{
|
||||
dev->tx_genrl_cfg.tx_valid_output_en = en;
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief Set the sample clock edge
|
||||
*
|
||||
@@ -794,6 +773,62 @@ static inline volatile void *parlio_ll_get_interrupt_status_reg(parl_io_dev_t *d
|
||||
return &dev->int_st;
|
||||
}
|
||||
|
||||
/**********************************************************************************************************************/
|
||||
/************************ The following functions behave differently based on the chip revision ***********************/
|
||||
/**********************************************************************************************************************/
|
||||
|
||||
#if HAL_CONFIG(CHIP_SUPPORT_MIN_REV) >= 300
|
||||
/**
|
||||
* @brief Set the clock gating from the valid signal
|
||||
*
|
||||
* @param dev Parallel IO register base address
|
||||
* @param en If set to true, the clock is gated by the valid signal, otherwise it is gated by the MSB of the data line.
|
||||
*/
|
||||
static inline void parlio_ll_tx_clock_gating_from_valid(parl_io_dev_t *dev, bool en)
|
||||
{
|
||||
dev->tx_genrl_cfg.tx_valid_output_en = en;
|
||||
}
|
||||
#else
|
||||
/**
|
||||
* @brief Whether to treat the MSB of TXD as the valid signal
|
||||
*
|
||||
* @note If enabled, TXD[15] will work as valid signal, which stay high during data transmission.
|
||||
*
|
||||
* @param dev Parallel IO register base address
|
||||
* @param en True to enable, False to disable
|
||||
*/
|
||||
static inline void parlio_ll_tx_treat_msb_as_valid(parl_io_dev_t *dev, bool en)
|
||||
{
|
||||
dev->tx_genrl_cfg.tx_valid_output_en = en;
|
||||
}
|
||||
#endif
|
||||
|
||||
/**
|
||||
* @brief Set TX valid signal delay
|
||||
*
|
||||
* @param dev Parallel IO register base address
|
||||
* @param start_delay Number of clock cycles to delay
|
||||
* @param stop_delay Number of clock cycles to delay
|
||||
* @return true: success, false: valid delay is not supported
|
||||
*/
|
||||
static inline bool parlio_ll_tx_set_valid_delay(parl_io_dev_t *dev, uint32_t start_delay, uint32_t stop_delay)
|
||||
{
|
||||
#if HAL_CONFIG(CHIP_SUPPORT_MIN_REV) >= 300
|
||||
if (start_delay > PARLIO_LL_TX_VALID_MAX_DELAY || stop_delay > PARLIO_LL_TX_VALID_MAX_DELAY) {
|
||||
return false;
|
||||
}
|
||||
HAL_FORCE_MODIFY_U32_REG_FIELD(dev->tx_cs_cfg, tx_cs_start_delay, start_delay);
|
||||
HAL_FORCE_MODIFY_U32_REG_FIELD(dev->tx_cs_cfg, tx_cs_stop_delay, stop_delay);
|
||||
return true;
|
||||
#else
|
||||
(void)dev;
|
||||
if (start_delay == 0 && stop_delay == 0) {
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
#endif
|
||||
}
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* SPDX-FileCopyrightText: 2015-2022 Espressif Systems (Shanghai) CO LTD
|
||||
* SPDX-FileCopyrightText: 2015-2025 Espressif Systems (Shanghai) CO LTD
|
||||
*
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
*/
|
||||
@@ -84,12 +84,6 @@
|
||||
|
||||
#define PIN_FUNC_GPIO 2
|
||||
|
||||
#define SPI_CLK_GPIO_NUM 6
|
||||
#define SPI_CS0_GPIO_NUM 11
|
||||
#define SPI_Q_GPIO_NUM 7
|
||||
#define SPI_D_GPIO_NUM 8
|
||||
#define SPI_WP_GPIO_NUM 10
|
||||
#define SPI_HD_GPIO_NUM 9
|
||||
#define XTAL32K_P_GPIO_NUM 32
|
||||
#define XTAL32K_N_GPIO_NUM 33
|
||||
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* SPDX-FileCopyrightText: 2017-2022 Espressif Systems (Shanghai) CO LTD
|
||||
* SPDX-FileCopyrightText: 2017-2025 Espressif Systems (Shanghai) CO LTD
|
||||
*
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
*/
|
||||
@@ -122,13 +122,6 @@
|
||||
#define GPIO_PAD_PULLDOWN(num) do{PIN_PULLUP_DIS(IOMUX_REG_GPIO##num);PIN_PULLDWN_EN(IOMUX_REG_GPIO##num);}while(0)
|
||||
#define GPIO_PAD_SET_DRV(num, drv) PIN_SET_DRV(IOMUX_REG_GPIO##num, drv)
|
||||
|
||||
#define SPI_HD_GPIO_NUM 12
|
||||
#define SPI_WP_GPIO_NUM 13
|
||||
#define SPI_CS0_GPIO_NUM 14
|
||||
#define SPI_CLK_GPIO_NUM 15
|
||||
#define SPI_D_GPIO_NUM 16
|
||||
#define SPI_Q_GPIO_NUM 17
|
||||
|
||||
#define MAX_RTC_GPIO_NUM 5
|
||||
#define MAX_PAD_GPIO_NUM 20
|
||||
#define MAX_GPIO_NUM 24
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* SPDX-FileCopyrightText: 2020-2021 Espressif Systems (Shanghai) CO LTD
|
||||
* SPDX-FileCopyrightText: 2020-2025 Espressif Systems (Shanghai) CO LTD
|
||||
*
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
*/
|
||||
@@ -123,13 +123,6 @@
|
||||
#define GPIO_PAD_PULLDOWN(num) do{PIN_PULLUP_DIS(IOMUX_REG_GPIO##num);PIN_PULLDWN_EN(IOMUX_REG_GPIO##num);}while(0)
|
||||
#define GPIO_PAD_SET_DRV(num, drv) PIN_SET_DRV(IOMUX_REG_GPIO##num, drv)
|
||||
|
||||
#define SPI_HD_GPIO_NUM 12
|
||||
#define SPI_WP_GPIO_NUM 13
|
||||
#define SPI_CS0_GPIO_NUM 14
|
||||
#define SPI_CLK_GPIO_NUM 15
|
||||
#define SPI_D_GPIO_NUM 16
|
||||
#define SPI_Q_GPIO_NUM 17
|
||||
|
||||
#define SD_CLK_GPIO_NUM 12
|
||||
#define SD_CMD_GPIO_NUM 11
|
||||
#define SD_DATA0_GPIO_NUM 13
|
||||
|
||||
@@ -130,14 +130,6 @@ extern "C" {
|
||||
#define GPIO_PAD_PULLUP(num) do{PIN_PULLDWN_DIS(IOMUX_REG_GPIO##num);PIN_PULLUP_EN(IOMUX_REG_GPIO##num);}while(0)
|
||||
#define GPIO_PAD_PULLDOWN(num) do{PIN_PULLUP_DIS(IOMUX_REG_GPIO##num);PIN_PULLDWN_EN(IOMUX_REG_GPIO##num);}while(0)
|
||||
|
||||
#define SPI_HD_GPIO_NUM 20
|
||||
#define SPI_WP_GPIO_NUM 18
|
||||
#define SPI_CS0_GPIO_NUM 16
|
||||
#define SPI_CLK_GPIO_NUM 21
|
||||
#define SPI_D_GPIO_NUM 22
|
||||
#define SPI_Q_GPIO_NUM 17
|
||||
#define SPI_CS1_GPIO_NUM 15
|
||||
|
||||
#define USB_INT_PHY0_DM_GPIO_NUM 13
|
||||
#define USB_INT_PHY0_DP_GPIO_NUM 14
|
||||
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* SPDX-FileCopyrightText: 2022 Espressif Systems (Shanghai) CO LTD
|
||||
* SPDX-FileCopyrightText: 2022-2025 Espressif Systems (Shanghai) CO LTD
|
||||
*
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
*/
|
||||
@@ -129,13 +129,6 @@
|
||||
#define GPIO_PAD_PULLDOWN(num) do{PIN_PULLUP_DIS(IOMUX_REG_GPIO##num);PIN_PULLDWN_EN(IOMUX_REG_GPIO##num);}while(0)
|
||||
#define GPIO_PAD_SET_DRV(num, drv) PIN_SET_DRV(IOMUX_REG_GPIO##num, drv)
|
||||
|
||||
#define SPI_HD_GPIO_NUM 28
|
||||
#define SPI_WP_GPIO_NUM 26
|
||||
#define SPI_CS0_GPIO_NUM 24
|
||||
#define SPI_CLK_GPIO_NUM 29
|
||||
#define SPI_D_GPIO_NUM 30
|
||||
#define SPI_Q_GPIO_NUM 25
|
||||
|
||||
#define SD_CLK_GPIO_NUM 19
|
||||
#define SD_CMD_GPIO_NUM 18
|
||||
#define SD_DATA0_GPIO_NUM 20
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* SPDX-FileCopyrightText: 2022-2023 Espressif Systems (Shanghai) CO LTD
|
||||
* SPDX-FileCopyrightText: 2022-2025 Espressif Systems (Shanghai) CO LTD
|
||||
*
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
*/
|
||||
@@ -148,13 +148,6 @@
|
||||
#define GPIO_PAD_PULLDOWN(num) do{PIN_PULLUP_DIS(IOMUX_REG_GPIO##num);PIN_PULLDWN_EN(IOMUX_REG_GPIO##num);}while(0)
|
||||
#define GPIO_PAD_SET_DRV(num, drv) PIN_SET_DRV(IOMUX_REG_GPIO##num, drv)
|
||||
|
||||
#define SPI_HD_GPIO_NUM 18
|
||||
#define SPI_WP_GPIO_NUM 17
|
||||
#define SPI_CS0_GPIO_NUM 15
|
||||
#define SPI_CLK_GPIO_NUM 19
|
||||
#define SPI_D_GPIO_NUM 20
|
||||
#define SPI_Q_GPIO_NUM 16
|
||||
|
||||
#define USB_INT_PHY0_DM_GPIO_NUM 26
|
||||
#define USB_INT_PHY0_DP_GPIO_NUM 27
|
||||
|
||||
|
||||
@@ -16,9 +16,9 @@ const emac_io_info_t emac_io_idx = {
|
||||
.mii_tx_clk_i_idx = EMAC_TX_CLK_PAD_IN_IDX,
|
||||
.mii_tx_en_o_idx = EMAC_PHY_TXEN_PAD_OUT_IDX,
|
||||
.mii_txd0_o_idx = EMAC_PHY_TXD0_PAD_OUT_IDX,
|
||||
.mii_txd1_o_idx = EMAC_PHY_TXD0_PAD_OUT_IDX,
|
||||
.mii_txd2_o_idx = EMAC_PHY_TXD0_PAD_OUT_IDX,
|
||||
.mii_txd3_o_idx = EMAC_PHY_TXD0_PAD_OUT_IDX,
|
||||
.mii_txd1_o_idx = EMAC_PHY_TXD1_PAD_OUT_IDX,
|
||||
.mii_txd2_o_idx = EMAC_PHY_TXD2_PAD_OUT_IDX,
|
||||
.mii_txd3_o_idx = EMAC_PHY_TXD3_PAD_OUT_IDX,
|
||||
.mii_rx_clk_i_idx = EMAC_RX_CLK_PAD_IN_IDX,
|
||||
.mii_rx_dv_i_idx = EMAC_PHY_RXDV_PAD_IN_IDX,
|
||||
.mii_rxd0_i_idx = EMAC_PHY_RXD0_PAD_IN_IDX,
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* SPDX-FileCopyrightText: 2023-2024 Espressif Systems (Shanghai) CO LTD
|
||||
* SPDX-FileCopyrightText: 2023-2025 Espressif Systems (Shanghai) CO LTD
|
||||
*
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
*/
|
||||
@@ -196,13 +196,9 @@
|
||||
#define PWM1_SYNC2_PAD_IN_IDX 100
|
||||
#define PWM1_CH2_B_PAD_OUT_IDX 100
|
||||
#define PWM1_F0_PAD_IN_IDX 101
|
||||
#define ADP_CHRG_PAD_OUT_IDX 101
|
||||
#define PWM1_F1_PAD_IN_IDX 102
|
||||
#define ADP_DISCHRG_PAD_OUT_IDX 102
|
||||
#define PWM1_F2_PAD_IN_IDX 103
|
||||
#define ADP_PRB_EN_PAD_OUT_IDX 103
|
||||
#define PWM1_CAP0_PAD_IN_IDX 104
|
||||
#define ADP_SNS_EN_PAD_OUT_IDX 104
|
||||
#define PWM1_CAP1_PAD_IN_IDX 105
|
||||
#define TWAI0_STANDBY_PAD_OUT_IDX 105
|
||||
#define PWM1_CAP2_PAD_IN_IDX 106
|
||||
@@ -224,7 +220,6 @@
|
||||
#define USB_SRP_SESSEND_PAD_IN_IDX 114
|
||||
#define USB_OTG11_DRVVBUS_PAD_OUT_IDX 114
|
||||
#define USB_SRP_CHRGVBUS_PAD_OUT_IDX 115
|
||||
#define OTG_DRVVBUS_PAD_OUT_IDX 116
|
||||
#define ULPI_CLK_PAD_IN_IDX 117
|
||||
#define RNG_CHAIN_CLK_PAD_OUT_IDX 117
|
||||
#define USB_HSPHY_REFCLK_IN_IDX 118
|
||||
@@ -260,9 +255,7 @@
|
||||
#define I3C_SLV_SCL_PAD_OUT_IDX 136
|
||||
#define I3C_SLV_SDA_PAD_IN_IDX 137
|
||||
#define I3C_SLV_SDA_PAD_OUT_IDX 137
|
||||
#define ADP_PRB_PAD_IN_IDX 138
|
||||
#define I3C_MST_SCL_PULLUP_EN_PAD_OUT_IDX 138
|
||||
#define ADP_SNS_PAD_IN_IDX 139
|
||||
#define I3C_MST_SDA_PULLUP_EN_PAD_OUT_IDX 139
|
||||
#define USB_JTAG_TDO_BRIDGE_PAD_IN_IDX 140
|
||||
#define USB_JTAG_TDI_BRIDGE_PAD_OUT_IDX 140
|
||||
@@ -458,13 +451,13 @@
|
||||
#define CORE_GPIO_IN_PAD_IN27_IDX 241
|
||||
#define CORE_GPIO_OUT_PAD_OUT27_IDX 241
|
||||
#define CORE_GPIO_IN_PAD_IN28_IDX 242
|
||||
#define CORE_GPIO_OUT_PAD_OUT28_IDX 242
|
||||
#define PARLIO_TX_CS_PAD_OUT_IDX 242 // only exists on ESP32P4 Rev. 3.0 and later
|
||||
#define CORE_GPIO_IN_PAD_IN29_IDX 243
|
||||
#define CORE_GPIO_OUT_PAD_OUT29_IDX 243
|
||||
#define EMAC_PTP_PPS_PAD_OUT_IDX 243
|
||||
#define CORE_GPIO_IN_PAD_IN30_IDX 244
|
||||
#define CORE_GPIO_OUT_PAD_OUT30_IDX 244
|
||||
#define ANA_COMP0_OUT_IDX 244
|
||||
#define CORE_GPIO_IN_PAD_IN31_IDX 245
|
||||
#define CORE_GPIO_OUT_PAD_OUT31_IDX 245
|
||||
#define ANA_COMP1_OUT_IDX 245
|
||||
#define RMT_SIG_PAD_IN0_IDX 246
|
||||
#define RMT_SIG_PAD_OUT0_IDX 246
|
||||
#define RMT_SIG_PAD_IN1_IDX 247
|
||||
@@ -485,4 +478,5 @@
|
||||
#define SIG_IN_FUNC254_IDX 254
|
||||
#define SIG_IN_FUNC255_IDX 255
|
||||
#define SIG_IN_FUNC255_IDX 255
|
||||
// version date 230403
|
||||
#define SIG_GPIO_OUT_IDX 256
|
||||
|
||||
@@ -35,7 +35,7 @@ const parlio_signal_conn_t parlio_periph_signals = {
|
||||
},
|
||||
.clk_out_sig = PARLIO_TX_CLK_PAD_OUT_IDX,
|
||||
.clk_in_sig = PARLIO_TX_CLK_PAD_IN_IDX,
|
||||
.cs_sig = -1,
|
||||
.cs_sig = PARLIO_TX_CS_PAD_OUT_IDX,
|
||||
}
|
||||
},
|
||||
.rx_units = {
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* SPDX-FileCopyrightText: 2023-2024 Espressif Systems (Shanghai) CO LTD
|
||||
* SPDX-FileCopyrightText: 2023-2025 Espressif Systems (Shanghai) CO LTD
|
||||
*
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
*/
|
||||
@@ -153,23 +153,6 @@
|
||||
#define GPIO_PAD_PULLDOWN(num) do{PIN_PULLUP_DIS(IOMUX_REG_GPIO##num);PIN_PULLDWN_EN(IOMUX_REG_GPIO##num);}while(0)
|
||||
#define GPIO_PAD_SET_DRV(num, drv) PIN_SET_DRV(IOMUX_REG_GPIO##num, drv)
|
||||
|
||||
// TODO: IDF-7499, IDF-7495
|
||||
// SPI pins defined here are all wrong. On P4, these pins are individual pins, don't use normal GPIO pins anymore.
|
||||
// Please check iomux_mspi_pin_struct/reg.h
|
||||
#include "soc/gpio_num.h"
|
||||
#define SPI_CS1_GPIO_NUM GPIO_NUM_MAX
|
||||
#define SPI_HD_GPIO_NUM GPIO_NUM_MAX
|
||||
#define SPI_WP_GPIO_NUM GPIO_NUM_MAX
|
||||
#define SPI_CS0_GPIO_NUM GPIO_NUM_MAX
|
||||
#define SPI_CLK_GPIO_NUM GPIO_NUM_MAX
|
||||
#define SPI_Q_GPIO_NUM GPIO_NUM_MAX
|
||||
#define SPI_D_GPIO_NUM GPIO_NUM_MAX
|
||||
#define SPI_D4_GPIO_NUM GPIO_NUM_MAX
|
||||
#define SPI_D5_GPIO_NUM GPIO_NUM_MAX
|
||||
#define SPI_D6_GPIO_NUM GPIO_NUM_MAX
|
||||
#define SPI_D7_GPIO_NUM GPIO_NUM_MAX
|
||||
#define SPI_DQS_GPIO_NUM GPIO_NUM_MAX
|
||||
|
||||
#define SD_CLK_GPIO_NUM 43
|
||||
#define SD_CMD_GPIO_NUM 44
|
||||
#define SD_DATA0_GPIO_NUM 39
|
||||
|
||||
@@ -1,772 +0,0 @@
|
||||
/**
|
||||
* 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: SDM Configure Registers */
|
||||
/** Type of sigmadeltan register
|
||||
* Duty Cycle Configure Register of SDMn
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** sdn_in : R/W; bitpos: [7:0]; default: 0;
|
||||
* This field is used to configure the duty cycle of sigma delta modulation output.
|
||||
*/
|
||||
uint32_t sdn_in:8;
|
||||
/** sdn_prescale : R/W; bitpos: [15:8]; default: 255;
|
||||
* This field is used to set a divider value to divide APB clock.
|
||||
*/
|
||||
uint32_t sdn_prescale:8;
|
||||
uint32_t reserved_16:16;
|
||||
};
|
||||
uint32_t val;
|
||||
} gpiosd_sigmadeltan_reg_t;
|
||||
|
||||
/** Type of sigmadelta_misc register
|
||||
* MISC Register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
uint32_t reserved_0:30;
|
||||
/** function_clk_en : R/W; bitpos: [30]; default: 0;
|
||||
* Clock enable bit of sigma delta modulation.
|
||||
*/
|
||||
uint32_t function_clk_en:1;
|
||||
/** spi_swap : R/W; bitpos: [31]; default: 0;
|
||||
* Reserved.
|
||||
*/
|
||||
uint32_t spi_swap:1;
|
||||
};
|
||||
uint32_t val;
|
||||
} gpiosd_sigmadelta_misc_reg_t;
|
||||
|
||||
|
||||
/** Group: Glitch filter Configure Registers */
|
||||
/** Type of glitch_filter_chn register
|
||||
* Glitch Filter Configure Register of Channeln
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** filter_ch0_en : R/W; bitpos: [0]; default: 0;
|
||||
* Glitch Filter channel enable bit.
|
||||
*/
|
||||
uint32_t filter_ch0_en:1;
|
||||
/** filter_ch0_input_io_num : R/W; bitpos: [6:1]; default: 0;
|
||||
* Glitch Filter input io number.
|
||||
*/
|
||||
uint32_t filter_ch0_input_io_num:6;
|
||||
/** filter_ch0_window_thres : R/W; bitpos: [12:7]; default: 0;
|
||||
* Glitch Filter window threshold.
|
||||
*/
|
||||
uint32_t filter_ch0_window_thres:6;
|
||||
/** filter_ch0_window_width : R/W; bitpos: [18:13]; default: 0;
|
||||
* Glitch Filter window width.
|
||||
*/
|
||||
uint32_t filter_ch0_window_width:6;
|
||||
uint32_t reserved_19:13;
|
||||
};
|
||||
uint32_t val;
|
||||
} gpiosd_glitch_filter_chn_reg_t;
|
||||
|
||||
|
||||
/** Group: Etm Configure Registers */
|
||||
/** Type of etm_event_chn_cfg register
|
||||
* Etm Config register of Channeln
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** etm_ch0_event_sel : R/W; bitpos: [5:0]; default: 0;
|
||||
* Etm event channel select gpio.
|
||||
*/
|
||||
uint32_t etm_ch0_event_sel:6;
|
||||
uint32_t reserved_6:1;
|
||||
/** etm_ch0_event_en : R/W; bitpos: [7]; default: 0;
|
||||
* Etm event send enable bit.
|
||||
*/
|
||||
uint32_t etm_ch0_event_en:1;
|
||||
uint32_t reserved_8:24;
|
||||
};
|
||||
uint32_t val;
|
||||
} gpiosd_etm_event_chn_cfg_reg_t;
|
||||
|
||||
/** Type of etm_task_p0_cfg register
|
||||
* Etm Configure Register to decide which GPIO been chosen
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** etm_task_gpio0_en : R/W; bitpos: [0]; default: 0;
|
||||
* Enable bit of GPIO response etm task.
|
||||
*/
|
||||
uint32_t etm_task_gpio0_en:1;
|
||||
/** etm_task_gpio0_sel : R/W; bitpos: [3:1]; default: 0;
|
||||
* GPIO choose a etm task channel.
|
||||
*/
|
||||
uint32_t etm_task_gpio0_sel:3;
|
||||
uint32_t reserved_4:4;
|
||||
/** etm_task_gpio1_en : R/W; bitpos: [8]; default: 0;
|
||||
* Enable bit of GPIO response etm task.
|
||||
*/
|
||||
uint32_t etm_task_gpio1_en:1;
|
||||
/** etm_task_gpio1_sel : R/W; bitpos: [11:9]; default: 0;
|
||||
* GPIO choose a etm task channel.
|
||||
*/
|
||||
uint32_t etm_task_gpio1_sel:3;
|
||||
uint32_t reserved_12:4;
|
||||
/** etm_task_gpio2_en : R/W; bitpos: [16]; default: 0;
|
||||
* Enable bit of GPIO response etm task.
|
||||
*/
|
||||
uint32_t etm_task_gpio2_en:1;
|
||||
/** etm_task_gpio2_sel : R/W; bitpos: [19:17]; default: 0;
|
||||
* GPIO choose a etm task channel.
|
||||
*/
|
||||
uint32_t etm_task_gpio2_sel:3;
|
||||
uint32_t reserved_20:4;
|
||||
/** etm_task_gpio3_en : R/W; bitpos: [24]; default: 0;
|
||||
* Enable bit of GPIO response etm task.
|
||||
*/
|
||||
uint32_t etm_task_gpio3_en:1;
|
||||
/** etm_task_gpio3_sel : R/W; bitpos: [27:25]; default: 0;
|
||||
* GPIO choose a etm task channel.
|
||||
*/
|
||||
uint32_t etm_task_gpio3_sel:3;
|
||||
uint32_t reserved_28:4;
|
||||
};
|
||||
uint32_t val;
|
||||
} gpiosd_etm_task_p0_cfg_reg_t;
|
||||
|
||||
/** Type of etm_task_p1_cfg register
|
||||
* Etm Configure Register to decide which GPIO been chosen
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** etm_task_gpio4_en : R/W; bitpos: [0]; default: 0;
|
||||
* Enable bit of GPIO response etm task.
|
||||
*/
|
||||
uint32_t etm_task_gpio4_en:1;
|
||||
/** etm_task_gpio4_sel : R/W; bitpos: [3:1]; default: 0;
|
||||
* GPIO choose a etm task channel.
|
||||
*/
|
||||
uint32_t etm_task_gpio4_sel:3;
|
||||
uint32_t reserved_4:4;
|
||||
/** etm_task_gpio5_en : R/W; bitpos: [8]; default: 0;
|
||||
* Enable bit of GPIO response etm task.
|
||||
*/
|
||||
uint32_t etm_task_gpio5_en:1;
|
||||
/** etm_task_gpio5_sel : R/W; bitpos: [11:9]; default: 0;
|
||||
* GPIO choose a etm task channel.
|
||||
*/
|
||||
uint32_t etm_task_gpio5_sel:3;
|
||||
uint32_t reserved_12:4;
|
||||
/** etm_task_gpio6_en : R/W; bitpos: [16]; default: 0;
|
||||
* Enable bit of GPIO response etm task.
|
||||
*/
|
||||
uint32_t etm_task_gpio6_en:1;
|
||||
/** etm_task_gpio6_sel : R/W; bitpos: [19:17]; default: 0;
|
||||
* GPIO choose a etm task channel.
|
||||
*/
|
||||
uint32_t etm_task_gpio6_sel:3;
|
||||
uint32_t reserved_20:4;
|
||||
/** etm_task_gpio7_en : R/W; bitpos: [24]; default: 0;
|
||||
* Enable bit of GPIO response etm task.
|
||||
*/
|
||||
uint32_t etm_task_gpio7_en:1;
|
||||
/** etm_task_gpio7_sel : R/W; bitpos: [27:25]; default: 0;
|
||||
* GPIO choose a etm task channel.
|
||||
*/
|
||||
uint32_t etm_task_gpio7_sel:3;
|
||||
uint32_t reserved_28:4;
|
||||
};
|
||||
uint32_t val;
|
||||
} gpiosd_etm_task_p1_cfg_reg_t;
|
||||
|
||||
/** Type of etm_task_p2_cfg register
|
||||
* Etm Configure Register to decide which GPIO been chosen
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** etm_task_gpio8_en : R/W; bitpos: [0]; default: 0;
|
||||
* Enable bit of GPIO response etm task.
|
||||
*/
|
||||
uint32_t etm_task_gpio8_en:1;
|
||||
/** etm_task_gpio8_sel : R/W; bitpos: [3:1]; default: 0;
|
||||
* GPIO choose a etm task channel.
|
||||
*/
|
||||
uint32_t etm_task_gpio8_sel:3;
|
||||
uint32_t reserved_4:4;
|
||||
/** etm_task_gpio9_en : R/W; bitpos: [8]; default: 0;
|
||||
* Enable bit of GPIO response etm task.
|
||||
*/
|
||||
uint32_t etm_task_gpio9_en:1;
|
||||
/** etm_task_gpio9_sel : R/W; bitpos: [11:9]; default: 0;
|
||||
* GPIO choose a etm task channel.
|
||||
*/
|
||||
uint32_t etm_task_gpio9_sel:3;
|
||||
uint32_t reserved_12:4;
|
||||
/** etm_task_gpio10_en : R/W; bitpos: [16]; default: 0;
|
||||
* Enable bit of GPIO response etm task.
|
||||
*/
|
||||
uint32_t etm_task_gpio10_en:1;
|
||||
/** etm_task_gpio10_sel : R/W; bitpos: [19:17]; default: 0;
|
||||
* GPIO choose a etm task channel.
|
||||
*/
|
||||
uint32_t etm_task_gpio10_sel:3;
|
||||
uint32_t reserved_20:4;
|
||||
/** etm_task_gpio11_en : R/W; bitpos: [24]; default: 0;
|
||||
* Enable bit of GPIO response etm task.
|
||||
*/
|
||||
uint32_t etm_task_gpio11_en:1;
|
||||
/** etm_task_gpio11_sel : R/W; bitpos: [27:25]; default: 0;
|
||||
* GPIO choose a etm task channel.
|
||||
*/
|
||||
uint32_t etm_task_gpio11_sel:3;
|
||||
uint32_t reserved_28:4;
|
||||
};
|
||||
uint32_t val;
|
||||
} gpiosd_etm_task_p2_cfg_reg_t;
|
||||
|
||||
/** Type of etm_task_p3_cfg register
|
||||
* Etm Configure Register to decide which GPIO been chosen
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** etm_task_gpio12_en : R/W; bitpos: [0]; default: 0;
|
||||
* Enable bit of GPIO response etm task.
|
||||
*/
|
||||
uint32_t etm_task_gpio12_en:1;
|
||||
/** etm_task_gpio12_sel : R/W; bitpos: [3:1]; default: 0;
|
||||
* GPIO choose a etm task channel.
|
||||
*/
|
||||
uint32_t etm_task_gpio12_sel:3;
|
||||
uint32_t reserved_4:4;
|
||||
/** etm_task_gpio13_en : R/W; bitpos: [8]; default: 0;
|
||||
* Enable bit of GPIO response etm task.
|
||||
*/
|
||||
uint32_t etm_task_gpio13_en:1;
|
||||
/** etm_task_gpio13_sel : R/W; bitpos: [11:9]; default: 0;
|
||||
* GPIO choose a etm task channel.
|
||||
*/
|
||||
uint32_t etm_task_gpio13_sel:3;
|
||||
uint32_t reserved_12:4;
|
||||
/** etm_task_gpio14_en : R/W; bitpos: [16]; default: 0;
|
||||
* Enable bit of GPIO response etm task.
|
||||
*/
|
||||
uint32_t etm_task_gpio14_en:1;
|
||||
/** etm_task_gpio14_sel : R/W; bitpos: [19:17]; default: 0;
|
||||
* GPIO choose a etm task channel.
|
||||
*/
|
||||
uint32_t etm_task_gpio14_sel:3;
|
||||
uint32_t reserved_20:4;
|
||||
/** etm_task_gpio15_en : R/W; bitpos: [24]; default: 0;
|
||||
* Enable bit of GPIO response etm task.
|
||||
*/
|
||||
uint32_t etm_task_gpio15_en:1;
|
||||
/** etm_task_gpio15_sel : R/W; bitpos: [27:25]; default: 0;
|
||||
* GPIO choose a etm task channel.
|
||||
*/
|
||||
uint32_t etm_task_gpio15_sel:3;
|
||||
uint32_t reserved_28:4;
|
||||
};
|
||||
uint32_t val;
|
||||
} gpiosd_etm_task_p3_cfg_reg_t;
|
||||
|
||||
/** Type of etm_task_p4_cfg register
|
||||
* Etm Configure Register to decide which GPIO been chosen
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** etm_task_gpio16_en : R/W; bitpos: [0]; default: 0;
|
||||
* Enable bit of GPIO response etm task.
|
||||
*/
|
||||
uint32_t etm_task_gpio16_en:1;
|
||||
/** etm_task_gpio16_sel : R/W; bitpos: [3:1]; default: 0;
|
||||
* GPIO choose a etm task channel.
|
||||
*/
|
||||
uint32_t etm_task_gpio16_sel:3;
|
||||
uint32_t reserved_4:4;
|
||||
/** etm_task_gpio17_en : R/W; bitpos: [8]; default: 0;
|
||||
* Enable bit of GPIO response etm task.
|
||||
*/
|
||||
uint32_t etm_task_gpio17_en:1;
|
||||
/** etm_task_gpio17_sel : R/W; bitpos: [11:9]; default: 0;
|
||||
* GPIO choose a etm task channel.
|
||||
*/
|
||||
uint32_t etm_task_gpio17_sel:3;
|
||||
uint32_t reserved_12:4;
|
||||
/** etm_task_gpio18_en : R/W; bitpos: [16]; default: 0;
|
||||
* Enable bit of GPIO response etm task.
|
||||
*/
|
||||
uint32_t etm_task_gpio18_en:1;
|
||||
/** etm_task_gpio18_sel : R/W; bitpos: [19:17]; default: 0;
|
||||
* GPIO choose a etm task channel.
|
||||
*/
|
||||
uint32_t etm_task_gpio18_sel:3;
|
||||
uint32_t reserved_20:4;
|
||||
/** etm_task_gpio19_en : R/W; bitpos: [24]; default: 0;
|
||||
* Enable bit of GPIO response etm task.
|
||||
*/
|
||||
uint32_t etm_task_gpio19_en:1;
|
||||
/** etm_task_gpio19_sel : R/W; bitpos: [27:25]; default: 0;
|
||||
* GPIO choose a etm task channel.
|
||||
*/
|
||||
uint32_t etm_task_gpio19_sel:3;
|
||||
uint32_t reserved_28:4;
|
||||
};
|
||||
uint32_t val;
|
||||
} gpiosd_etm_task_p4_cfg_reg_t;
|
||||
|
||||
/** Type of etm_task_p5_cfg register
|
||||
* Etm Configure Register to decide which GPIO been chosen
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** etm_task_gpio20_en : R/W; bitpos: [0]; default: 0;
|
||||
* Enable bit of GPIO response etm task.
|
||||
*/
|
||||
uint32_t etm_task_gpio20_en:1;
|
||||
/** etm_task_gpio20_sel : R/W; bitpos: [3:1]; default: 0;
|
||||
* GPIO choose a etm task channel.
|
||||
*/
|
||||
uint32_t etm_task_gpio20_sel:3;
|
||||
uint32_t reserved_4:4;
|
||||
/** etm_task_gpio21_en : R/W; bitpos: [8]; default: 0;
|
||||
* Enable bit of GPIO response etm task.
|
||||
*/
|
||||
uint32_t etm_task_gpio21_en:1;
|
||||
/** etm_task_gpio21_sel : R/W; bitpos: [11:9]; default: 0;
|
||||
* GPIO choose a etm task channel.
|
||||
*/
|
||||
uint32_t etm_task_gpio21_sel:3;
|
||||
uint32_t reserved_12:4;
|
||||
/** etm_task_gpio22_en : R/W; bitpos: [16]; default: 0;
|
||||
* Enable bit of GPIO response etm task.
|
||||
*/
|
||||
uint32_t etm_task_gpio22_en:1;
|
||||
/** etm_task_gpio22_sel : R/W; bitpos: [19:17]; default: 0;
|
||||
* GPIO choose a etm task channel.
|
||||
*/
|
||||
uint32_t etm_task_gpio22_sel:3;
|
||||
uint32_t reserved_20:4;
|
||||
/** etm_task_gpio23_en : R/W; bitpos: [24]; default: 0;
|
||||
* Enable bit of GPIO response etm task.
|
||||
*/
|
||||
uint32_t etm_task_gpio23_en:1;
|
||||
/** etm_task_gpio23_sel : R/W; bitpos: [27:25]; default: 0;
|
||||
* GPIO choose a etm task channel.
|
||||
*/
|
||||
uint32_t etm_task_gpio23_sel:3;
|
||||
uint32_t reserved_28:4;
|
||||
};
|
||||
uint32_t val;
|
||||
} gpiosd_etm_task_p5_cfg_reg_t;
|
||||
|
||||
/** Type of etm_task_p6_cfg register
|
||||
* Etm Configure Register to decide which GPIO been chosen
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** etm_task_gpio24_en : R/W; bitpos: [0]; default: 0;
|
||||
* Enable bit of GPIO response etm task.
|
||||
*/
|
||||
uint32_t etm_task_gpio24_en:1;
|
||||
/** etm_task_gpio24_sel : R/W; bitpos: [3:1]; default: 0;
|
||||
* GPIO choose a etm task channel.
|
||||
*/
|
||||
uint32_t etm_task_gpio24_sel:3;
|
||||
uint32_t reserved_4:4;
|
||||
/** etm_task_gpio25_en : R/W; bitpos: [8]; default: 0;
|
||||
* Enable bit of GPIO response etm task.
|
||||
*/
|
||||
uint32_t etm_task_gpio25_en:1;
|
||||
/** etm_task_gpio25_sel : R/W; bitpos: [11:9]; default: 0;
|
||||
* GPIO choose a etm task channel.
|
||||
*/
|
||||
uint32_t etm_task_gpio25_sel:3;
|
||||
uint32_t reserved_12:4;
|
||||
/** etm_task_gpio26_en : R/W; bitpos: [16]; default: 0;
|
||||
* Enable bit of GPIO response etm task.
|
||||
*/
|
||||
uint32_t etm_task_gpio26_en:1;
|
||||
/** etm_task_gpio26_sel : R/W; bitpos: [19:17]; default: 0;
|
||||
* GPIO choose a etm task channel.
|
||||
*/
|
||||
uint32_t etm_task_gpio26_sel:3;
|
||||
uint32_t reserved_20:4;
|
||||
/** etm_task_gpio27_en : R/W; bitpos: [24]; default: 0;
|
||||
* Enable bit of GPIO response etm task.
|
||||
*/
|
||||
uint32_t etm_task_gpio27_en:1;
|
||||
/** etm_task_gpio27_sel : R/W; bitpos: [27:25]; default: 0;
|
||||
* GPIO choose a etm task channel.
|
||||
*/
|
||||
uint32_t etm_task_gpio27_sel:3;
|
||||
uint32_t reserved_28:4;
|
||||
};
|
||||
uint32_t val;
|
||||
} gpiosd_etm_task_p6_cfg_reg_t;
|
||||
|
||||
/** Type of etm_task_p7_cfg register
|
||||
* Etm Configure Register to decide which GPIO been chosen
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** etm_task_gpio28_en : R/W; bitpos: [0]; default: 0;
|
||||
* Enable bit of GPIO response etm task.
|
||||
*/
|
||||
uint32_t etm_task_gpio28_en:1;
|
||||
/** etm_task_gpio28_sel : R/W; bitpos: [3:1]; default: 0;
|
||||
* GPIO choose a etm task channel.
|
||||
*/
|
||||
uint32_t etm_task_gpio28_sel:3;
|
||||
uint32_t reserved_4:4;
|
||||
/** etm_task_gpio29_en : R/W; bitpos: [8]; default: 0;
|
||||
* Enable bit of GPIO response etm task.
|
||||
*/
|
||||
uint32_t etm_task_gpio29_en:1;
|
||||
/** etm_task_gpio29_sel : R/W; bitpos: [11:9]; default: 0;
|
||||
* GPIO choose a etm task channel.
|
||||
*/
|
||||
uint32_t etm_task_gpio29_sel:3;
|
||||
uint32_t reserved_12:4;
|
||||
/** etm_task_gpio30_en : R/W; bitpos: [16]; default: 0;
|
||||
* Enable bit of GPIO response etm task.
|
||||
*/
|
||||
uint32_t etm_task_gpio30_en:1;
|
||||
/** etm_task_gpio30_sel : R/W; bitpos: [19:17]; default: 0;
|
||||
* GPIO choose a etm task channel.
|
||||
*/
|
||||
uint32_t etm_task_gpio30_sel:3;
|
||||
uint32_t reserved_20:4;
|
||||
/** etm_task_gpio31_en : R/W; bitpos: [24]; default: 0;
|
||||
* Enable bit of GPIO response etm task.
|
||||
*/
|
||||
uint32_t etm_task_gpio31_en:1;
|
||||
/** etm_task_gpio31_sel : R/W; bitpos: [27:25]; default: 0;
|
||||
* GPIO choose a etm task channel.
|
||||
*/
|
||||
uint32_t etm_task_gpio31_sel:3;
|
||||
uint32_t reserved_28:4;
|
||||
};
|
||||
uint32_t val;
|
||||
} gpiosd_etm_task_p7_cfg_reg_t;
|
||||
|
||||
/** Type of etm_task_p8_cfg register
|
||||
* Etm Configure Register to decide which GPIO been chosen
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** etm_task_gpio32_en : R/W; bitpos: [0]; default: 0;
|
||||
* Enable bit of GPIO response etm task.
|
||||
*/
|
||||
uint32_t etm_task_gpio32_en:1;
|
||||
/** etm_task_gpio32_sel : R/W; bitpos: [3:1]; default: 0;
|
||||
* GPIO choose a etm task channel.
|
||||
*/
|
||||
uint32_t etm_task_gpio32_sel:3;
|
||||
uint32_t reserved_4:4;
|
||||
/** etm_task_gpio33_en : R/W; bitpos: [8]; default: 0;
|
||||
* Enable bit of GPIO response etm task.
|
||||
*/
|
||||
uint32_t etm_task_gpio33_en:1;
|
||||
/** etm_task_gpio33_sel : R/W; bitpos: [11:9]; default: 0;
|
||||
* GPIO choose a etm task channel.
|
||||
*/
|
||||
uint32_t etm_task_gpio33_sel:3;
|
||||
uint32_t reserved_12:4;
|
||||
/** etm_task_gpio34_en : R/W; bitpos: [16]; default: 0;
|
||||
* Enable bit of GPIO response etm task.
|
||||
*/
|
||||
uint32_t etm_task_gpio34_en:1;
|
||||
/** etm_task_gpio34_sel : R/W; bitpos: [19:17]; default: 0;
|
||||
* GPIO choose a etm task channel.
|
||||
*/
|
||||
uint32_t etm_task_gpio34_sel:3;
|
||||
uint32_t reserved_20:4;
|
||||
/** etm_task_gpio35_en : R/W; bitpos: [24]; default: 0;
|
||||
* Enable bit of GPIO response etm task.
|
||||
*/
|
||||
uint32_t etm_task_gpio35_en:1;
|
||||
/** etm_task_gpio35_sel : R/W; bitpos: [27:25]; default: 0;
|
||||
* GPIO choose a etm task channel.
|
||||
*/
|
||||
uint32_t etm_task_gpio35_sel:3;
|
||||
uint32_t reserved_28:4;
|
||||
};
|
||||
uint32_t val;
|
||||
} gpiosd_etm_task_p8_cfg_reg_t;
|
||||
|
||||
/** Type of etm_task_p9_cfg register
|
||||
* Etm Configure Register to decide which GPIO been chosen
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** etm_task_gpio36_en : R/W; bitpos: [0]; default: 0;
|
||||
* Enable bit of GPIO response etm task.
|
||||
*/
|
||||
uint32_t etm_task_gpio36_en:1;
|
||||
/** etm_task_gpio36_sel : R/W; bitpos: [3:1]; default: 0;
|
||||
* GPIO choose a etm task channel.
|
||||
*/
|
||||
uint32_t etm_task_gpio36_sel:3;
|
||||
uint32_t reserved_4:4;
|
||||
/** etm_task_gpio37_en : R/W; bitpos: [8]; default: 0;
|
||||
* Enable bit of GPIO response etm task.
|
||||
*/
|
||||
uint32_t etm_task_gpio37_en:1;
|
||||
/** etm_task_gpio37_sel : R/W; bitpos: [11:9]; default: 0;
|
||||
* GPIO choose a etm task channel.
|
||||
*/
|
||||
uint32_t etm_task_gpio37_sel:3;
|
||||
uint32_t reserved_12:4;
|
||||
/** etm_task_gpio38_en : R/W; bitpos: [16]; default: 0;
|
||||
* Enable bit of GPIO response etm task.
|
||||
*/
|
||||
uint32_t etm_task_gpio38_en:1;
|
||||
/** etm_task_gpio38_sel : R/W; bitpos: [19:17]; default: 0;
|
||||
* GPIO choose a etm task channel.
|
||||
*/
|
||||
uint32_t etm_task_gpio38_sel:3;
|
||||
uint32_t reserved_20:4;
|
||||
/** etm_task_gpio39_en : R/W; bitpos: [24]; default: 0;
|
||||
* Enable bit of GPIO response etm task.
|
||||
*/
|
||||
uint32_t etm_task_gpio39_en:1;
|
||||
/** etm_task_gpio39_sel : R/W; bitpos: [27:25]; default: 0;
|
||||
* GPIO choose a etm task channel.
|
||||
*/
|
||||
uint32_t etm_task_gpio39_sel:3;
|
||||
uint32_t reserved_28:4;
|
||||
};
|
||||
uint32_t val;
|
||||
} gpiosd_etm_task_p9_cfg_reg_t;
|
||||
|
||||
/** Type of etm_task_p10_cfg register
|
||||
* Etm Configure Register to decide which GPIO been chosen
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** etm_task_gpio40_en : R/W; bitpos: [0]; default: 0;
|
||||
* Enable bit of GPIO response etm task.
|
||||
*/
|
||||
uint32_t etm_task_gpio40_en:1;
|
||||
/** etm_task_gpio40_sel : R/W; bitpos: [3:1]; default: 0;
|
||||
* GPIO choose a etm task channel.
|
||||
*/
|
||||
uint32_t etm_task_gpio40_sel:3;
|
||||
uint32_t reserved_4:4;
|
||||
/** etm_task_gpio41_en : R/W; bitpos: [8]; default: 0;
|
||||
* Enable bit of GPIO response etm task.
|
||||
*/
|
||||
uint32_t etm_task_gpio41_en:1;
|
||||
/** etm_task_gpio41_sel : R/W; bitpos: [11:9]; default: 0;
|
||||
* GPIO choose a etm task channel.
|
||||
*/
|
||||
uint32_t etm_task_gpio41_sel:3;
|
||||
uint32_t reserved_12:4;
|
||||
/** etm_task_gpio42_en : R/W; bitpos: [16]; default: 0;
|
||||
* Enable bit of GPIO response etm task.
|
||||
*/
|
||||
uint32_t etm_task_gpio42_en:1;
|
||||
/** etm_task_gpio42_sel : R/W; bitpos: [19:17]; default: 0;
|
||||
* GPIO choose a etm task channel.
|
||||
*/
|
||||
uint32_t etm_task_gpio42_sel:3;
|
||||
uint32_t reserved_20:4;
|
||||
/** etm_task_gpio43_en : R/W; bitpos: [24]; default: 0;
|
||||
* Enable bit of GPIO response etm task.
|
||||
*/
|
||||
uint32_t etm_task_gpio43_en:1;
|
||||
/** etm_task_gpio43_sel : R/W; bitpos: [27:25]; default: 0;
|
||||
* GPIO choose a etm task channel.
|
||||
*/
|
||||
uint32_t etm_task_gpio43_sel:3;
|
||||
uint32_t reserved_28:4;
|
||||
};
|
||||
uint32_t val;
|
||||
} gpiosd_etm_task_p10_cfg_reg_t;
|
||||
|
||||
/** Type of etm_task_p11_cfg register
|
||||
* Etm Configure Register to decide which GPIO been chosen
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** etm_task_gpio44_en : R/W; bitpos: [0]; default: 0;
|
||||
* Enable bit of GPIO response etm task.
|
||||
*/
|
||||
uint32_t etm_task_gpio44_en:1;
|
||||
/** etm_task_gpio44_sel : R/W; bitpos: [3:1]; default: 0;
|
||||
* GPIO choose a etm task channel.
|
||||
*/
|
||||
uint32_t etm_task_gpio44_sel:3;
|
||||
uint32_t reserved_4:4;
|
||||
/** etm_task_gpio45_en : R/W; bitpos: [8]; default: 0;
|
||||
* Enable bit of GPIO response etm task.
|
||||
*/
|
||||
uint32_t etm_task_gpio45_en:1;
|
||||
/** etm_task_gpio45_sel : R/W; bitpos: [11:9]; default: 0;
|
||||
* GPIO choose a etm task channel.
|
||||
*/
|
||||
uint32_t etm_task_gpio45_sel:3;
|
||||
uint32_t reserved_12:4;
|
||||
/** etm_task_gpio46_en : R/W; bitpos: [16]; default: 0;
|
||||
* Enable bit of GPIO response etm task.
|
||||
*/
|
||||
uint32_t etm_task_gpio46_en:1;
|
||||
/** etm_task_gpio46_sel : R/W; bitpos: [19:17]; default: 0;
|
||||
* GPIO choose a etm task channel.
|
||||
*/
|
||||
uint32_t etm_task_gpio46_sel:3;
|
||||
uint32_t reserved_20:4;
|
||||
/** etm_task_gpio47_en : R/W; bitpos: [24]; default: 0;
|
||||
* Enable bit of GPIO response etm task.
|
||||
*/
|
||||
uint32_t etm_task_gpio47_en:1;
|
||||
/** etm_task_gpio47_sel : R/W; bitpos: [27:25]; default: 0;
|
||||
* GPIO choose a etm task channel.
|
||||
*/
|
||||
uint32_t etm_task_gpio47_sel:3;
|
||||
uint32_t reserved_28:4;
|
||||
};
|
||||
uint32_t val;
|
||||
} gpiosd_etm_task_p11_cfg_reg_t;
|
||||
|
||||
/** Type of etm_task_p12_cfg register
|
||||
* Etm Configure Register to decide which GPIO been chosen
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** etm_task_gpio48_en : R/W; bitpos: [0]; default: 0;
|
||||
* Enable bit of GPIO response etm task.
|
||||
*/
|
||||
uint32_t etm_task_gpio48_en:1;
|
||||
/** etm_task_gpio48_sel : R/W; bitpos: [3:1]; default: 0;
|
||||
* GPIO choose a etm task channel.
|
||||
*/
|
||||
uint32_t etm_task_gpio48_sel:3;
|
||||
uint32_t reserved_4:4;
|
||||
/** etm_task_gpio49_en : R/W; bitpos: [8]; default: 0;
|
||||
* Enable bit of GPIO response etm task.
|
||||
*/
|
||||
uint32_t etm_task_gpio49_en:1;
|
||||
/** etm_task_gpio49_sel : R/W; bitpos: [11:9]; default: 0;
|
||||
* GPIO choose a etm task channel.
|
||||
*/
|
||||
uint32_t etm_task_gpio49_sel:3;
|
||||
uint32_t reserved_12:4;
|
||||
/** etm_task_gpio50_en : R/W; bitpos: [16]; default: 0;
|
||||
* Enable bit of GPIO response etm task.
|
||||
*/
|
||||
uint32_t etm_task_gpio50_en:1;
|
||||
/** etm_task_gpio50_sel : R/W; bitpos: [19:17]; default: 0;
|
||||
* GPIO choose a etm task channel.
|
||||
*/
|
||||
uint32_t etm_task_gpio50_sel:3;
|
||||
uint32_t reserved_20:4;
|
||||
/** etm_task_gpio51_en : R/W; bitpos: [24]; default: 0;
|
||||
* Enable bit of GPIO response etm task.
|
||||
*/
|
||||
uint32_t etm_task_gpio51_en:1;
|
||||
/** etm_task_gpio51_sel : R/W; bitpos: [27:25]; default: 0;
|
||||
* GPIO choose a etm task channel.
|
||||
*/
|
||||
uint32_t etm_task_gpio51_sel:3;
|
||||
uint32_t reserved_28:4;
|
||||
};
|
||||
uint32_t val;
|
||||
} gpiosd_etm_task_p12_cfg_reg_t;
|
||||
|
||||
/** Type of etm_task_p13_cfg register
|
||||
* Etm Configure Register to decide which GPIO been chosen
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** etm_task_gpio52_en : R/W; bitpos: [0]; default: 0;
|
||||
* Enable bit of GPIO response etm task.
|
||||
*/
|
||||
uint32_t etm_task_gpio52_en:1;
|
||||
/** etm_task_gpio52_sel : R/W; bitpos: [3:1]; default: 0;
|
||||
* GPIO choose a etm task channel.
|
||||
*/
|
||||
uint32_t etm_task_gpio52_sel:3;
|
||||
uint32_t reserved_4:4;
|
||||
/** etm_task_gpio53_en : R/W; bitpos: [8]; default: 0;
|
||||
* Enable bit of GPIO response etm task.
|
||||
*/
|
||||
uint32_t etm_task_gpio53_en:1;
|
||||
/** etm_task_gpio53_sel : R/W; bitpos: [11:9]; default: 0;
|
||||
* GPIO choose a etm task channel.
|
||||
*/
|
||||
uint32_t etm_task_gpio53_sel:3;
|
||||
uint32_t reserved_12:4;
|
||||
/** etm_task_gpio54_en : R/W; bitpos: [16]; default: 0;
|
||||
* Enable bit of GPIO response etm task.
|
||||
*/
|
||||
uint32_t etm_task_gpio54_en:1;
|
||||
/** etm_task_gpio54_sel : R/W; bitpos: [19:17]; default: 0;
|
||||
* GPIO choose a etm task channel.
|
||||
*/
|
||||
uint32_t etm_task_gpio54_sel:3;
|
||||
uint32_t reserved_20:12;
|
||||
};
|
||||
uint32_t val;
|
||||
} gpiosd_etm_task_p13_cfg_reg_t;
|
||||
|
||||
|
||||
/** Group: Version Register */
|
||||
/** Type of version register
|
||||
* Version Control Register
|
||||
*/
|
||||
typedef union {
|
||||
struct {
|
||||
/** gpio_sd_date : R/W; bitpos: [27:0]; default: 35663952;
|
||||
* Version control register.
|
||||
*/
|
||||
uint32_t gpio_sd_date:28;
|
||||
uint32_t reserved_28:4;
|
||||
};
|
||||
uint32_t val;
|
||||
} gpiosd_version_reg_t;
|
||||
|
||||
|
||||
typedef struct {
|
||||
volatile gpiosd_sigmadeltan_reg_t sigmadeltan[8];
|
||||
uint32_t reserved_020;
|
||||
volatile gpiosd_sigmadelta_misc_reg_t sigmadelta_misc;
|
||||
uint32_t reserved_028[2];
|
||||
volatile gpiosd_glitch_filter_chn_reg_t glitch_filter_chn[8];
|
||||
uint32_t reserved_050[4];
|
||||
volatile gpiosd_etm_event_chn_cfg_reg_t etm_event_chn_cfg[8];
|
||||
uint32_t reserved_080[8];
|
||||
volatile gpiosd_etm_task_p0_cfg_reg_t etm_task_p0_cfg;
|
||||
volatile gpiosd_etm_task_p1_cfg_reg_t etm_task_p1_cfg;
|
||||
volatile gpiosd_etm_task_p2_cfg_reg_t etm_task_p2_cfg;
|
||||
volatile gpiosd_etm_task_p3_cfg_reg_t etm_task_p3_cfg;
|
||||
volatile gpiosd_etm_task_p4_cfg_reg_t etm_task_p4_cfg;
|
||||
volatile gpiosd_etm_task_p5_cfg_reg_t etm_task_p5_cfg;
|
||||
volatile gpiosd_etm_task_p6_cfg_reg_t etm_task_p6_cfg;
|
||||
volatile gpiosd_etm_task_p7_cfg_reg_t etm_task_p7_cfg;
|
||||
volatile gpiosd_etm_task_p8_cfg_reg_t etm_task_p8_cfg;
|
||||
volatile gpiosd_etm_task_p9_cfg_reg_t etm_task_p9_cfg;
|
||||
volatile gpiosd_etm_task_p10_cfg_reg_t etm_task_p10_cfg;
|
||||
volatile gpiosd_etm_task_p11_cfg_reg_t etm_task_p11_cfg;
|
||||
volatile gpiosd_etm_task_p12_cfg_reg_t etm_task_p12_cfg;
|
||||
volatile gpiosd_etm_task_p13_cfg_reg_t etm_task_p13_cfg;
|
||||
uint32_t reserved_0d8[9];
|
||||
volatile gpiosd_version_reg_t version;
|
||||
} gpiosd_dev_t;
|
||||
|
||||
extern gpiosd_dev_t GPIO;
|
||||
|
||||
#ifndef __cplusplus
|
||||
_Static_assert(sizeof(gpiosd_dev_t) == 0x100, "Invalid size of gpiosd_dev_t structure");
|
||||
#endif
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
@@ -1,483 +0,0 @@
|
||||
/*
|
||||
* SPDX-FileCopyrightText: 2025 Espressif Systems (Shanghai) CO LTD
|
||||
*
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
*/
|
||||
|
||||
#pragma once
|
||||
|
||||
#define SD_CARD_CCLK_2_PAD_OUT_IDX 0
|
||||
#define SD_CARD_CCMD_2_PAD_IN_IDX 1
|
||||
#define SD_CARD_CCMD_2_PAD_OUT_IDX 1
|
||||
#define SD_CARD_CDATA0_2_PAD_IN_IDX 2
|
||||
#define SD_CARD_CDATA0_2_PAD_OUT_IDX 2
|
||||
#define SD_CARD_CDATA1_2_PAD_IN_IDX 3
|
||||
#define SD_CARD_CDATA1_2_PAD_OUT_IDX 3
|
||||
#define SD_CARD_CDATA2_2_PAD_IN_IDX 4
|
||||
#define SD_CARD_CDATA2_2_PAD_OUT_IDX 4
|
||||
#define SD_CARD_CDATA3_2_PAD_IN_IDX 5
|
||||
#define SD_CARD_CDATA3_2_PAD_OUT_IDX 5
|
||||
#define SD_CARD_CDATA4_2_PAD_IN_IDX 6
|
||||
#define SD_CARD_CDATA4_2_PAD_OUT_IDX 6
|
||||
#define SD_CARD_CDATA5_2_PAD_IN_IDX 7
|
||||
#define SD_CARD_CDATA5_2_PAD_OUT_IDX 7
|
||||
#define SD_CARD_CDATA6_2_PAD_IN_IDX 8
|
||||
#define SD_CARD_CDATA6_2_PAD_OUT_IDX 8
|
||||
#define SD_CARD_CDATA7_2_PAD_IN_IDX 9
|
||||
#define SD_CARD_CDATA7_2_PAD_OUT_IDX 9
|
||||
#define UART0_RXD_PAD_IN_IDX 10
|
||||
#define UART0_TXD_PAD_OUT_IDX 10
|
||||
#define UART0_CTS_PAD_IN_IDX 11
|
||||
#define UART0_RTS_PAD_OUT_IDX 11
|
||||
#define UART0_DSR_PAD_IN_IDX 12
|
||||
#define UART0_DTR_PAD_OUT_IDX 12
|
||||
#define UART1_RXD_PAD_IN_IDX 13
|
||||
#define UART1_TXD_PAD_OUT_IDX 13
|
||||
#define UART1_CTS_PAD_IN_IDX 14
|
||||
#define UART1_RTS_PAD_OUT_IDX 14
|
||||
#define UART1_DSR_PAD_IN_IDX 15
|
||||
#define UART1_DTR_PAD_OUT_IDX 15
|
||||
#define UART2_RXD_PAD_IN_IDX 16
|
||||
#define UART2_TXD_PAD_OUT_IDX 16
|
||||
#define UART2_CTS_PAD_IN_IDX 17
|
||||
#define UART2_RTS_PAD_OUT_IDX 17
|
||||
#define UART2_DSR_PAD_IN_IDX 18
|
||||
#define UART2_DTR_PAD_OUT_IDX 18
|
||||
#define UART3_RXD_PAD_IN_IDX 19
|
||||
#define UART3_TXD_PAD_OUT_IDX 19
|
||||
#define UART3_CTS_PAD_IN_IDX 20
|
||||
#define UART3_RTS_PAD_OUT_IDX 20
|
||||
#define UART3_DSR_PAD_IN_IDX 21
|
||||
#define UART3_DTR_PAD_OUT_IDX 21
|
||||
#define UART4_RXD_PAD_IN_IDX 22
|
||||
#define UART4_TXD_PAD_OUT_IDX 22
|
||||
#define UART4_CTS_PAD_IN_IDX 23
|
||||
#define UART4_RTS_PAD_OUT_IDX 23
|
||||
#define UART4_DSR_PAD_IN_IDX 24
|
||||
#define UART4_DTR_PAD_OUT_IDX 24
|
||||
#define I2S0_O_BCK_PAD_IN_IDX 25
|
||||
#define I2S0_O_BCK_PAD_OUT_IDX 25
|
||||
#define I2S0_MCLK_PAD_IN_IDX 26
|
||||
#define I2S0_MCLK_PAD_OUT_IDX 26
|
||||
#define I2S0_O_WS_PAD_IN_IDX 27
|
||||
#define I2S0_O_WS_PAD_OUT_IDX 27
|
||||
#define I2S0_I_SD_PAD_IN_IDX 28
|
||||
#define I2S0_O_SD_PAD_OUT_IDX 28
|
||||
#define I2S0_I_BCK_PAD_IN_IDX 29
|
||||
#define I2S0_I_BCK_PAD_OUT_IDX 29
|
||||
#define I2S0_I_WS_PAD_IN_IDX 30
|
||||
#define I2S0_I_WS_PAD_OUT_IDX 30
|
||||
#define I2S1_O_BCK_PAD_IN_IDX 31
|
||||
#define I2S1_O_BCK_PAD_OUT_IDX 31
|
||||
#define I2S1_MCLK_PAD_IN_IDX 32
|
||||
#define I2S1_MCLK_PAD_OUT_IDX 32
|
||||
#define I2S1_O_WS_PAD_IN_IDX 33
|
||||
#define I2S1_O_WS_PAD_OUT_IDX 33
|
||||
#define I2S1_I_SD_PAD_IN_IDX 34
|
||||
#define I2S1_O_SD_PAD_OUT_IDX 34
|
||||
#define I2S1_I_BCK_PAD_IN_IDX 35
|
||||
#define I2S1_I_BCK_PAD_OUT_IDX 35
|
||||
#define I2S1_I_WS_PAD_IN_IDX 36
|
||||
#define I2S1_I_WS_PAD_OUT_IDX 36
|
||||
#define I2S2_O_BCK_PAD_IN_IDX 37
|
||||
#define I2S2_O_BCK_PAD_OUT_IDX 37
|
||||
#define I2S2_MCLK_PAD_IN_IDX 38
|
||||
#define I2S2_MCLK_PAD_OUT_IDX 38
|
||||
#define I2S2_O_WS_PAD_IN_IDX 39
|
||||
#define I2S2_O_WS_PAD_OUT_IDX 39
|
||||
#define I2S2_I_SD_PAD_IN_IDX 40
|
||||
#define I2S2_O_SD_PAD_OUT_IDX 40
|
||||
#define I2S2_I_BCK_PAD_IN_IDX 41
|
||||
#define I2S2_I_BCK_PAD_OUT_IDX 41
|
||||
#define I2S2_I_WS_PAD_IN_IDX 42
|
||||
#define I2S2_I_WS_PAD_OUT_IDX 42
|
||||
#define I2S0_I_SD1_PAD_IN_IDX 43
|
||||
#define I2S0_O_SD1_PAD_OUT_IDX 43
|
||||
#define I2S0_I_SD2_PAD_IN_IDX 44
|
||||
#define SPI2_DQS_PAD_OUT_IDX 44
|
||||
#define I2S0_I_SD3_PAD_IN_IDX 45
|
||||
#define SPI3_CS2_PAD_OUT_IDX 45
|
||||
#define SPI3_CS1_PAD_OUT_IDX 46
|
||||
#define SPI3_CK_PAD_IN_IDX 47
|
||||
#define SPI3_CK_PAD_OUT_IDX 47
|
||||
#define SPI3_Q_PAD_IN_IDX 48
|
||||
#define SPI3_QO_PAD_OUT_IDX 48
|
||||
#define SPI3_D_PAD_IN_IDX 49
|
||||
#define SPI3_D_PAD_OUT_IDX 49
|
||||
#define SPI3_HOLD_PAD_IN_IDX 50
|
||||
#define SPI3_HOLD_PAD_OUT_IDX 50
|
||||
#define SPI3_WP_PAD_IN_IDX 51
|
||||
#define SPI3_WP_PAD_OUT_IDX 51
|
||||
#define SPI3_CS_PAD_IN_IDX 52
|
||||
#define SPI3_CS_PAD_OUT_IDX 52
|
||||
#define SPI2_CK_PAD_IN_IDX 53
|
||||
#define SPI2_CK_PAD_OUT_IDX 53
|
||||
#define SPI2_Q_PAD_IN_IDX 54
|
||||
#define SPI2_Q_PAD_OUT_IDX 54
|
||||
#define SPI2_D_PAD_IN_IDX 55
|
||||
#define SPI2_D_PAD_OUT_IDX 55
|
||||
#define SPI2_HOLD_PAD_IN_IDX 56
|
||||
#define SPI2_HOLD_PAD_OUT_IDX 56
|
||||
#define SPI2_WP_PAD_IN_IDX 57
|
||||
#define SPI2_WP_PAD_OUT_IDX 57
|
||||
#define SPI2_IO4_PAD_IN_IDX 58
|
||||
#define SPI2_IO4_PAD_OUT_IDX 58
|
||||
#define SPI2_IO5_PAD_IN_IDX 59
|
||||
#define SPI2_IO5_PAD_OUT_IDX 59
|
||||
#define SPI2_IO6_PAD_IN_IDX 60
|
||||
#define SPI2_IO6_PAD_OUT_IDX 60
|
||||
#define SPI2_IO7_PAD_IN_IDX 61
|
||||
#define SPI2_IO7_PAD_OUT_IDX 61
|
||||
#define SPI2_CS_PAD_IN_IDX 62
|
||||
#define SPI2_CS_PAD_OUT_IDX 62
|
||||
#define PCNT_RST_PAD_IN0_IDX 63
|
||||
#define SPI2_CS1_PAD_OUT_IDX 63
|
||||
#define PCNT_RST_PAD_IN1_IDX 64
|
||||
#define SPI2_CS2_PAD_OUT_IDX 64
|
||||
#define PCNT_RST_PAD_IN2_IDX 65
|
||||
#define SPI2_CS3_PAD_OUT_IDX 65
|
||||
#define PCNT_RST_PAD_IN3_IDX 66
|
||||
#define SPI2_CS4_PAD_OUT_IDX 66
|
||||
#define SPI2_CS5_PAD_OUT_IDX 67
|
||||
#define I2C0_SCL_PAD_IN_IDX 68
|
||||
#define I2C0_SCL_PAD_OUT_IDX 68
|
||||
#define I2C0_SDA_PAD_IN_IDX 69
|
||||
#define I2C0_SDA_PAD_OUT_IDX 69
|
||||
#define I2C1_SCL_PAD_IN_IDX 70
|
||||
#define I2C1_SCL_PAD_OUT_IDX 70
|
||||
#define I2C1_SDA_PAD_IN_IDX 71
|
||||
#define I2C1_SDA_PAD_OUT_IDX 71
|
||||
#define GPIO_SD0_OUT_IDX 72
|
||||
#define GPIO_SD1_OUT_IDX 73
|
||||
#define UART0_SLP_CLK_PAD_IN_IDX 74
|
||||
#define GPIO_SD2_OUT_IDX 74
|
||||
#define UART1_SLP_CLK_PAD_IN_IDX 75
|
||||
#define GPIO_SD3_OUT_IDX 75
|
||||
#define UART2_SLP_CLK_PAD_IN_IDX 76
|
||||
#define GPIO_SD4_OUT_IDX 76
|
||||
#define UART3_SLP_CLK_PAD_IN_IDX 77
|
||||
#define GPIO_SD5_OUT_IDX 77
|
||||
#define UART4_SLP_CLK_PAD_IN_IDX 78
|
||||
#define GPIO_SD6_OUT_IDX 78
|
||||
#define GPIO_SD7_OUT_IDX 79
|
||||
#define TWAI0_RX_PAD_IN_IDX 80
|
||||
#define TWAI0_TX_PAD_OUT_IDX 80
|
||||
#define TWAI0_BUS_OFF_ON_PAD_OUT_IDX 81
|
||||
#define TWAI0_CLKOUT_PAD_OUT_IDX 82
|
||||
#define TWAI1_RX_PAD_IN_IDX 83
|
||||
#define TWAI1_TX_PAD_OUT_IDX 83
|
||||
#define TWAI1_BUS_OFF_ON_PAD_OUT_IDX 84
|
||||
#define TWAI1_CLKOUT_PAD_OUT_IDX 85
|
||||
#define TWAI2_RX_PAD_IN_IDX 86
|
||||
#define TWAI2_TX_PAD_OUT_IDX 86
|
||||
#define TWAI2_BUS_OFF_ON_PAD_OUT_IDX 87
|
||||
#define TWAI2_CLKOUT_PAD_OUT_IDX 88
|
||||
#define PWM0_SYNC0_PAD_IN_IDX 89
|
||||
#define PWM0_CH0_A_PAD_OUT_IDX 89
|
||||
#define PWM0_SYNC1_PAD_IN_IDX 90
|
||||
#define PWM0_CH0_B_PAD_OUT_IDX 90
|
||||
#define PWM0_SYNC2_PAD_IN_IDX 91
|
||||
#define PWM0_CH1_A_PAD_OUT_IDX 91
|
||||
#define PWM0_F0_PAD_IN_IDX 92
|
||||
#define PWM0_CH1_B_PAD_OUT_IDX 92
|
||||
#define PWM0_F1_PAD_IN_IDX 93
|
||||
#define PWM0_CH2_A_PAD_OUT_IDX 93
|
||||
#define PWM0_F2_PAD_IN_IDX 94
|
||||
#define PWM0_CH2_B_PAD_OUT_IDX 94
|
||||
#define PWM0_CAP0_PAD_IN_IDX 95
|
||||
#define PWM1_CH0_A_PAD_OUT_IDX 95
|
||||
#define PWM0_CAP1_PAD_IN_IDX 96
|
||||
#define PWM1_CH0_B_PAD_OUT_IDX 96
|
||||
#define PWM0_CAP2_PAD_IN_IDX 97
|
||||
#define PWM1_CH1_A_PAD_OUT_IDX 97
|
||||
#define PWM1_SYNC0_PAD_IN_IDX 98
|
||||
#define PWM1_CH1_B_PAD_OUT_IDX 98
|
||||
#define PWM1_SYNC1_PAD_IN_IDX 99
|
||||
#define PWM1_CH2_A_PAD_OUT_IDX 99
|
||||
#define PWM1_SYNC2_PAD_IN_IDX 100
|
||||
#define PWM1_CH2_B_PAD_OUT_IDX 100
|
||||
#define PWM1_F0_PAD_IN_IDX 101
|
||||
#define PWM1_F1_PAD_IN_IDX 102
|
||||
#define PWM1_F2_PAD_IN_IDX 103
|
||||
#define PWM1_CAP0_PAD_IN_IDX 104
|
||||
#define PWM1_CAP1_PAD_IN_IDX 105
|
||||
#define TWAI0_STANDBY_PAD_OUT_IDX 105
|
||||
#define PWM1_CAP2_PAD_IN_IDX 106
|
||||
#define TWAI1_STANDBY_PAD_OUT_IDX 106
|
||||
#define GMII_MDI_PAD_IN_IDX 107
|
||||
#define TWAI2_STANDBY_PAD_OUT_IDX 107
|
||||
#define GMAC_PHY_COL_PAD_IN_IDX 108
|
||||
#define GMII_MDC_PAD_OUT_IDX 108
|
||||
#define GMAC_PHY_CRS_PAD_IN_IDX 109
|
||||
#define GMII_MDO_PAD_OUT_IDX 109
|
||||
#define USB_OTG11_IDDIG_PAD_IN_IDX 110
|
||||
#define USB_SRP_DISCHRGVBUS_PAD_OUT_IDX 110
|
||||
#define USB_OTG11_AVALID_PAD_IN_IDX 111
|
||||
#define USB_OTG11_IDPULLUP_PAD_OUT_IDX 111
|
||||
#define USB_SRP_BVALID_PAD_IN_IDX 112
|
||||
#define USB_OTG11_DPPULLDOWN_PAD_OUT_IDX 112
|
||||
#define USB_OTG11_VBUSVALID_PAD_IN_IDX 113
|
||||
#define USB_OTG11_DMPULLDOWN_PAD_OUT_IDX 113
|
||||
#define USB_SRP_SESSEND_PAD_IN_IDX 114
|
||||
#define USB_OTG11_DRVVBUS_PAD_OUT_IDX 114
|
||||
#define USB_SRP_CHRGVBUS_PAD_OUT_IDX 115
|
||||
#define ULPI_CLK_PAD_IN_IDX 117
|
||||
#define RNG_CHAIN_CLK_PAD_OUT_IDX 117
|
||||
#define USB_HSPHY_REFCLK_IN_IDX 118
|
||||
#define HP_PROBE_TOP_OUT0_IDX 118
|
||||
#define HP_PROBE_TOP_OUT1_IDX 119
|
||||
#define HP_PROBE_TOP_OUT2_IDX 120
|
||||
#define HP_PROBE_TOP_OUT3_IDX 121
|
||||
#define HP_PROBE_TOP_OUT4_IDX 122
|
||||
#define HP_PROBE_TOP_OUT5_IDX 123
|
||||
#define HP_PROBE_TOP_OUT6_IDX 124
|
||||
#define HP_PROBE_TOP_OUT7_IDX 125
|
||||
#define SD_CARD_DETECT_N_1_PAD_IN_IDX 126
|
||||
#define LEDC_LS_SIG_OUT_PAD_OUT0_IDX 126
|
||||
#define SD_CARD_DETECT_N_2_PAD_IN_IDX 127
|
||||
#define LEDC_LS_SIG_OUT_PAD_OUT1_IDX 127
|
||||
#define SD_CARD_INT_N_1_PAD_IN_IDX 128
|
||||
#define LEDC_LS_SIG_OUT_PAD_OUT2_IDX 128
|
||||
#define SD_CARD_INT_N_2_PAD_IN_IDX 129
|
||||
#define LEDC_LS_SIG_OUT_PAD_OUT3_IDX 129
|
||||
#define SD_CARD_WRITE_PRT_1_PAD_IN_IDX 130
|
||||
#define LEDC_LS_SIG_OUT_PAD_OUT4_IDX 130
|
||||
#define SD_CARD_WRITE_PRT_2_PAD_IN_IDX 131
|
||||
#define LEDC_LS_SIG_OUT_PAD_OUT5_IDX 131
|
||||
#define SD_DATA_STROBE_1_PAD_IN_IDX 132
|
||||
#define LEDC_LS_SIG_OUT_PAD_OUT6_IDX 132
|
||||
#define SD_DATA_STROBE_2_PAD_IN_IDX 133
|
||||
#define LEDC_LS_SIG_OUT_PAD_OUT7_IDX 133
|
||||
#define I3C_MST_SCL_PAD_IN_IDX 134
|
||||
#define I3C_MST_SCL_PAD_OUT_IDX 134
|
||||
#define I3C_MST_SDA_PAD_IN_IDX 135
|
||||
#define I3C_MST_SDA_PAD_OUT_IDX 135
|
||||
#define I3C_SLV_SCL_PAD_IN_IDX 136
|
||||
#define I3C_SLV_SCL_PAD_OUT_IDX 136
|
||||
#define I3C_SLV_SDA_PAD_IN_IDX 137
|
||||
#define I3C_SLV_SDA_PAD_OUT_IDX 137
|
||||
#define I3C_MST_SCL_PULLUP_EN_PAD_OUT_IDX 138
|
||||
#define I3C_MST_SDA_PULLUP_EN_PAD_OUT_IDX 139
|
||||
#define USB_JTAG_TDO_BRIDGE_PAD_IN_IDX 140
|
||||
#define USB_JTAG_TDI_BRIDGE_PAD_OUT_IDX 140
|
||||
#define PCNT_SIG_CH0_PAD_IN0_IDX 141
|
||||
#define USB_JTAG_TMS_BRIDGE_PAD_OUT_IDX 141
|
||||
#define PCNT_SIG_CH0_PAD_IN1_IDX 142
|
||||
#define USB_JTAG_TCK_BRIDGE_PAD_OUT_IDX 142
|
||||
#define PCNT_SIG_CH0_PAD_IN2_IDX 143
|
||||
#define USB_JTAG_TRST_BRIDGE_PAD_OUT_IDX 143
|
||||
#define PCNT_SIG_CH0_PAD_IN3_IDX 144
|
||||
#define LCD_CS_PAD_OUT_IDX 144
|
||||
#define PCNT_SIG_CH1_PAD_IN0_IDX 145
|
||||
#define LCD_DC_PAD_OUT_IDX 145
|
||||
#define PCNT_SIG_CH1_PAD_IN1_IDX 146
|
||||
#define SD_RST_N_1_PAD_OUT_IDX 146
|
||||
#define PCNT_SIG_CH1_PAD_IN2_IDX 147
|
||||
#define SD_RST_N_2_PAD_OUT_IDX 147
|
||||
#define PCNT_SIG_CH1_PAD_IN3_IDX 148
|
||||
#define SD_CCMD_OD_PULLUP_EN_N_PAD_OUT_IDX 148
|
||||
#define PCNT_CTRL_CH0_PAD_IN0_IDX 149
|
||||
#define LCD_PCLK_PAD_OUT_IDX 149
|
||||
#define PCNT_CTRL_CH0_PAD_IN1_IDX 150
|
||||
#define CAM_CLK_PAD_OUT_IDX 150
|
||||
#define PCNT_CTRL_CH0_PAD_IN2_IDX 151
|
||||
#define LCD_H_ENABLE_PAD_OUT_IDX 151
|
||||
#define PCNT_CTRL_CH0_PAD_IN3_IDX 152
|
||||
#define LCD_H_SYNC_PAD_OUT_IDX 152
|
||||
#define PCNT_CTRL_CH1_PAD_IN0_IDX 153
|
||||
#define LCD_V_SYNC_PAD_OUT_IDX 153
|
||||
#define PCNT_CTRL_CH1_PAD_IN1_IDX 154
|
||||
#define LCD_DATA_OUT_PAD_OUT0_IDX 154
|
||||
#define PCNT_CTRL_CH1_PAD_IN2_IDX 155
|
||||
#define LCD_DATA_OUT_PAD_OUT1_IDX 155
|
||||
#define PCNT_CTRL_CH1_PAD_IN3_IDX 156
|
||||
#define LCD_DATA_OUT_PAD_OUT2_IDX 156
|
||||
#define LCD_DATA_OUT_PAD_OUT3_IDX 157
|
||||
#define CAM_PCLK_PAD_IN_IDX 158
|
||||
#define LCD_DATA_OUT_PAD_OUT4_IDX 158
|
||||
#define CAM_H_ENABLE_PAD_IN_IDX 159
|
||||
#define LCD_DATA_OUT_PAD_OUT5_IDX 159
|
||||
#define CAM_H_SYNC_PAD_IN_IDX 160
|
||||
#define LCD_DATA_OUT_PAD_OUT6_IDX 160
|
||||
#define CAM_V_SYNC_PAD_IN_IDX 161
|
||||
#define LCD_DATA_OUT_PAD_OUT7_IDX 161
|
||||
#define CAM_DATA_IN_PAD_IN0_IDX 162
|
||||
#define LCD_DATA_OUT_PAD_OUT8_IDX 162
|
||||
#define CAM_DATA_IN_PAD_IN1_IDX 163
|
||||
#define LCD_DATA_OUT_PAD_OUT9_IDX 163
|
||||
#define CAM_DATA_IN_PAD_IN2_IDX 164
|
||||
#define LCD_DATA_OUT_PAD_OUT10_IDX 164
|
||||
#define CAM_DATA_IN_PAD_IN3_IDX 165
|
||||
#define LCD_DATA_OUT_PAD_OUT11_IDX 165
|
||||
#define CAM_DATA_IN_PAD_IN4_IDX 166
|
||||
#define LCD_DATA_OUT_PAD_OUT12_IDX 166
|
||||
#define CAM_DATA_IN_PAD_IN5_IDX 167
|
||||
#define LCD_DATA_OUT_PAD_OUT13_IDX 167
|
||||
#define CAM_DATA_IN_PAD_IN6_IDX 168
|
||||
#define LCD_DATA_OUT_PAD_OUT14_IDX 168
|
||||
#define CAM_DATA_IN_PAD_IN7_IDX 169
|
||||
#define LCD_DATA_OUT_PAD_OUT15_IDX 169
|
||||
#define CAM_DATA_IN_PAD_IN8_IDX 170
|
||||
#define LCD_DATA_OUT_PAD_OUT16_IDX 170
|
||||
#define CAM_DATA_IN_PAD_IN9_IDX 171
|
||||
#define LCD_DATA_OUT_PAD_OUT17_IDX 171
|
||||
#define CAM_DATA_IN_PAD_IN10_IDX 172
|
||||
#define LCD_DATA_OUT_PAD_OUT18_IDX 172
|
||||
#define CAM_DATA_IN_PAD_IN11_IDX 173
|
||||
#define LCD_DATA_OUT_PAD_OUT19_IDX 173
|
||||
#define CAM_DATA_IN_PAD_IN12_IDX 174
|
||||
#define LCD_DATA_OUT_PAD_OUT20_IDX 174
|
||||
#define CAM_DATA_IN_PAD_IN13_IDX 175
|
||||
#define LCD_DATA_OUT_PAD_OUT21_IDX 175
|
||||
#define CAM_DATA_IN_PAD_IN14_IDX 176
|
||||
#define LCD_DATA_OUT_PAD_OUT22_IDX 176
|
||||
#define CAM_DATA_IN_PAD_IN15_IDX 177
|
||||
#define LCD_DATA_OUT_PAD_OUT23_IDX 177
|
||||
#define GMAC_PHY_RXDV_PAD_IN_IDX 178
|
||||
#define GMAC_PHY_TXEN_PAD_OUT_IDX 178
|
||||
#define GMAC_PHY_RXD0_PAD_IN_IDX 179
|
||||
#define GMAC_PHY_TXD0_PAD_OUT_IDX 179
|
||||
#define GMAC_PHY_RXD1_PAD_IN_IDX 180
|
||||
#define GMAC_PHY_TXD1_PAD_OUT_IDX 180
|
||||
#define GMAC_PHY_RXD2_PAD_IN_IDX 181
|
||||
#define GMAC_PHY_TXD2_PAD_OUT_IDX 181
|
||||
#define GMAC_PHY_RXD3_PAD_IN_IDX 182
|
||||
#define GMAC_PHY_TXD3_PAD_OUT_IDX 182
|
||||
#define GMAC_PHY_RXER_PAD_IN_IDX 183
|
||||
#define GMAC_PHY_TXER_PAD_OUT_IDX 183
|
||||
#define GMAC_RX_CLK_PAD_IN_IDX 184
|
||||
#define DBG_CH0_CLK_IDX 184
|
||||
#define GMAC_TX_CLK_PAD_IN_IDX 185
|
||||
#define DBG_CH1_CLK_IDX 185
|
||||
#define PARLIO_RX_CLK_PAD_IN_IDX 186
|
||||
#define PARLIO_RX_CLK_PAD_OUT_IDX 186
|
||||
#define PARLIO_TX_CLK_PAD_IN_IDX 187
|
||||
#define PARLIO_TX_CLK_PAD_OUT_IDX 187
|
||||
#define PARLIO_RX_DATA0_PAD_IN_IDX 188
|
||||
#define PARLIO_TX_DATA0_PAD_OUT_IDX 188
|
||||
#define PARLIO_RX_DATA1_PAD_IN_IDX 189
|
||||
#define PARLIO_TX_DATA1_PAD_OUT_IDX 189
|
||||
#define PARLIO_RX_DATA2_PAD_IN_IDX 190
|
||||
#define PARLIO_TX_DATA2_PAD_OUT_IDX 190
|
||||
#define PARLIO_RX_DATA3_PAD_IN_IDX 191
|
||||
#define PARLIO_TX_DATA3_PAD_OUT_IDX 191
|
||||
#define PARLIO_RX_DATA4_PAD_IN_IDX 192
|
||||
#define PARLIO_TX_DATA4_PAD_OUT_IDX 192
|
||||
#define PARLIO_RX_DATA5_PAD_IN_IDX 193
|
||||
#define PARLIO_TX_DATA5_PAD_OUT_IDX 193
|
||||
#define PARLIO_RX_DATA6_PAD_IN_IDX 194
|
||||
#define PARLIO_TX_DATA6_PAD_OUT_IDX 194
|
||||
#define PARLIO_RX_DATA7_PAD_IN_IDX 195
|
||||
#define PARLIO_TX_DATA7_PAD_OUT_IDX 195
|
||||
#define PARLIO_RX_DATA8_PAD_IN_IDX 196
|
||||
#define PARLIO_TX_DATA8_PAD_OUT_IDX 196
|
||||
#define PARLIO_RX_DATA9_PAD_IN_IDX 197
|
||||
#define PARLIO_TX_DATA9_PAD_OUT_IDX 197
|
||||
#define PARLIO_RX_DATA10_PAD_IN_IDX 198
|
||||
#define PARLIO_TX_DATA10_PAD_OUT_IDX 198
|
||||
#define PARLIO_RX_DATA11_PAD_IN_IDX 199
|
||||
#define PARLIO_TX_DATA11_PAD_OUT_IDX 199
|
||||
#define PARLIO_RX_DATA12_PAD_IN_IDX 200
|
||||
#define PARLIO_TX_DATA12_PAD_OUT_IDX 200
|
||||
#define PARLIO_RX_DATA13_PAD_IN_IDX 201
|
||||
#define PARLIO_TX_DATA13_PAD_OUT_IDX 201
|
||||
#define PARLIO_RX_DATA14_PAD_IN_IDX 202
|
||||
#define PARLIO_TX_DATA14_PAD_OUT_IDX 202
|
||||
#define PARLIO_RX_DATA15_PAD_IN_IDX 203
|
||||
#define PARLIO_TX_DATA15_PAD_OUT_IDX 203
|
||||
#define HP_PROBE_TOP_OUT8_IDX 204
|
||||
#define HP_PROBE_TOP_OUT9_IDX 205
|
||||
#define HP_PROBE_TOP_OUT10_IDX 206
|
||||
#define HP_PROBE_TOP_OUT11_IDX 207
|
||||
#define HP_PROBE_TOP_OUT12_IDX 208
|
||||
#define HP_PROBE_TOP_OUT13_IDX 209
|
||||
#define HP_PROBE_TOP_OUT14_IDX 210
|
||||
#define HP_PROBE_TOP_OUT15_IDX 211
|
||||
#define CONSTANT0_PAD_OUT_IDX 212
|
||||
#define CONSTANT1_PAD_OUT_IDX 213
|
||||
#define CORE_GPIO_IN_PAD_IN0_IDX 214
|
||||
#define CORE_GPIO_OUT_PAD_OUT0_IDX 214
|
||||
#define CORE_GPIO_IN_PAD_IN1_IDX 215
|
||||
#define CORE_GPIO_OUT_PAD_OUT1_IDX 215
|
||||
#define CORE_GPIO_IN_PAD_IN2_IDX 216
|
||||
#define CORE_GPIO_OUT_PAD_OUT2_IDX 216
|
||||
#define CORE_GPIO_IN_PAD_IN3_IDX 217
|
||||
#define CORE_GPIO_OUT_PAD_OUT3_IDX 217
|
||||
#define CORE_GPIO_IN_PAD_IN4_IDX 218
|
||||
#define CORE_GPIO_OUT_PAD_OUT4_IDX 218
|
||||
#define CORE_GPIO_IN_PAD_IN5_IDX 219
|
||||
#define CORE_GPIO_OUT_PAD_OUT5_IDX 219
|
||||
#define CORE_GPIO_IN_PAD_IN6_IDX 220
|
||||
#define CORE_GPIO_OUT_PAD_OUT6_IDX 220
|
||||
#define CORE_GPIO_IN_PAD_IN7_IDX 221
|
||||
#define CORE_GPIO_OUT_PAD_OUT7_IDX 221
|
||||
#define CORE_GPIO_IN_PAD_IN8_IDX 222
|
||||
#define CORE_GPIO_OUT_PAD_OUT8_IDX 222
|
||||
#define CORE_GPIO_IN_PAD_IN9_IDX 223
|
||||
#define CORE_GPIO_OUT_PAD_OUT9_IDX 223
|
||||
#define CORE_GPIO_IN_PAD_IN10_IDX 224
|
||||
#define CORE_GPIO_OUT_PAD_OUT10_IDX 224
|
||||
#define CORE_GPIO_IN_PAD_IN11_IDX 225
|
||||
#define CORE_GPIO_OUT_PAD_OUT11_IDX 225
|
||||
#define CORE_GPIO_IN_PAD_IN12_IDX 226
|
||||
#define CORE_GPIO_OUT_PAD_OUT12_IDX 226
|
||||
#define CORE_GPIO_IN_PAD_IN13_IDX 227
|
||||
#define CORE_GPIO_OUT_PAD_OUT13_IDX 227
|
||||
#define CORE_GPIO_IN_PAD_IN14_IDX 228
|
||||
#define CORE_GPIO_OUT_PAD_OUT14_IDX 228
|
||||
#define CORE_GPIO_IN_PAD_IN15_IDX 229
|
||||
#define CORE_GPIO_OUT_PAD_OUT15_IDX 229
|
||||
#define CORE_GPIO_IN_PAD_IN16_IDX 230
|
||||
#define CORE_GPIO_OUT_PAD_OUT16_IDX 230
|
||||
#define CORE_GPIO_IN_PAD_IN17_IDX 231
|
||||
#define CORE_GPIO_OUT_PAD_OUT17_IDX 231
|
||||
#define CORE_GPIO_IN_PAD_IN18_IDX 232
|
||||
#define CORE_GPIO_OUT_PAD_OUT18_IDX 232
|
||||
#define CORE_GPIO_IN_PAD_IN19_IDX 233
|
||||
#define CORE_GPIO_OUT_PAD_OUT19_IDX 233
|
||||
#define CORE_GPIO_IN_PAD_IN20_IDX 234
|
||||
#define CORE_GPIO_OUT_PAD_OUT20_IDX 234
|
||||
#define CORE_GPIO_IN_PAD_IN21_IDX 235
|
||||
#define CORE_GPIO_OUT_PAD_OUT21_IDX 235
|
||||
#define CORE_GPIO_IN_PAD_IN22_IDX 236
|
||||
#define CORE_GPIO_OUT_PAD_OUT22_IDX 236
|
||||
#define CORE_GPIO_IN_PAD_IN23_IDX 237
|
||||
#define CORE_GPIO_OUT_PAD_OUT23_IDX 237
|
||||
#define CORE_GPIO_IN_PAD_IN24_IDX 238
|
||||
#define CORE_GPIO_OUT_PAD_OUT24_IDX 238
|
||||
#define CORE_GPIO_IN_PAD_IN25_IDX 239
|
||||
#define CORE_GPIO_OUT_PAD_OUT25_IDX 239
|
||||
#define CORE_GPIO_IN_PAD_IN26_IDX 240
|
||||
#define CORE_GPIO_OUT_PAD_OUT26_IDX 240
|
||||
#define CORE_GPIO_IN_PAD_IN27_IDX 241
|
||||
#define CORE_GPIO_OUT_PAD_OUT27_IDX 241
|
||||
#define CORE_GPIO_IN_PAD_IN28_IDX 242
|
||||
#define PARLIO_TX_CS_PAD_OUT_IDX 242
|
||||
#define CORE_GPIO_IN_PAD_IN29_IDX 243
|
||||
#define EMAC_PTP_PPS_PAD_OUT_IDX 243
|
||||
#define CORE_GPIO_IN_PAD_IN30_IDX 244
|
||||
#define ANA_COMP0_OUT_IDX 244
|
||||
#define CORE_GPIO_IN_PAD_IN31_IDX 245
|
||||
#define ANA_COMP1_OUT_IDX 245
|
||||
#define RMT_SIG_PAD_IN0_IDX 246
|
||||
#define RMT_SIG_PAD_OUT0_IDX 246
|
||||
#define RMT_SIG_PAD_IN1_IDX 247
|
||||
#define RMT_SIG_PAD_OUT1_IDX 247
|
||||
#define RMT_SIG_PAD_IN2_IDX 248
|
||||
#define RMT_SIG_PAD_OUT2_IDX 248
|
||||
#define RMT_SIG_PAD_IN3_IDX 249
|
||||
#define RMT_SIG_PAD_OUT3_IDX 249
|
||||
#define SIG_IN_FUNC250_IDX 250
|
||||
#define SIG_IN_FUNC250_IDX 250
|
||||
#define SIG_IN_FUNC251_IDX 251
|
||||
#define SIG_IN_FUNC251_IDX 251
|
||||
#define SIG_IN_FUNC252_IDX 252
|
||||
#define SIG_IN_FUNC252_IDX 252
|
||||
#define SIG_IN_FUNC253_IDX 253
|
||||
#define SIG_IN_FUNC253_IDX 253
|
||||
#define SIG_IN_FUNC254_IDX 254
|
||||
#define SIG_IN_FUNC254_IDX 254
|
||||
#define SIG_IN_FUNC255_IDX 255
|
||||
#define SIG_IN_FUNC255_IDX 255
|
||||
// version date 230403
|
||||
#define SIG_GPIO_OUT_IDX 256
|
||||
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@@ -7,8 +7,6 @@
|
||||
#pragma once
|
||||
#include "soc/soc.h"
|
||||
|
||||
//TODO: IDF-13419
|
||||
|
||||
/* The following are the bit fields for PERIPHS_IO_MUX_x_U registers */
|
||||
/* Output enable in sleep mode */
|
||||
#define SLP_OE (BIT(0))
|
||||
@@ -155,23 +153,6 @@
|
||||
#define GPIO_PAD_PULLDOWN(num) do{PIN_PULLUP_DIS(IOMUX_REG_GPIO##num);PIN_PULLDWN_EN(IOMUX_REG_GPIO##num);}while(0)
|
||||
#define GPIO_PAD_SET_DRV(num, drv) PIN_SET_DRV(IOMUX_REG_GPIO##num, drv)
|
||||
|
||||
// TODO: IDF-7499, IDF-7495
|
||||
// SPI pins defined here are all wrong. On P4, these pins are individual pins, don't use normal GPIO pins anymore.
|
||||
// Please check iomux_mspi_pin_struct/reg.h
|
||||
#include "soc/gpio_num.h"
|
||||
#define SPI_CS1_GPIO_NUM GPIO_NUM_MAX
|
||||
#define SPI_HD_GPIO_NUM GPIO_NUM_MAX
|
||||
#define SPI_WP_GPIO_NUM GPIO_NUM_MAX
|
||||
#define SPI_CS0_GPIO_NUM GPIO_NUM_MAX
|
||||
#define SPI_CLK_GPIO_NUM GPIO_NUM_MAX
|
||||
#define SPI_Q_GPIO_NUM GPIO_NUM_MAX
|
||||
#define SPI_D_GPIO_NUM GPIO_NUM_MAX
|
||||
#define SPI_D4_GPIO_NUM GPIO_NUM_MAX
|
||||
#define SPI_D5_GPIO_NUM GPIO_NUM_MAX
|
||||
#define SPI_D6_GPIO_NUM GPIO_NUM_MAX
|
||||
#define SPI_D7_GPIO_NUM GPIO_NUM_MAX
|
||||
#define SPI_DQS_GPIO_NUM GPIO_NUM_MAX
|
||||
|
||||
#define SD_CLK_GPIO_NUM 43
|
||||
#define SD_CMD_GPIO_NUM 44
|
||||
#define SD_DATA0_GPIO_NUM 39
|
||||
@@ -357,6 +338,7 @@
|
||||
#define FUNC_GPIO31_GPIO31 1
|
||||
#define FUNC_GPIO31_GPIO31_0 0
|
||||
|
||||
// Strapping: Diag Group Sel1
|
||||
#define PERIPHS_IO_MUX_U_PAD_GPIO32 (REG_IO_MUX_BASE + 0x84)
|
||||
#define FUNC_GPIO32_DBG_PSRAM_DQ4_PAD 4
|
||||
#define FUNC_GPIO32_EMAC_RMII_CLK_PAD 3
|
||||
@@ -364,6 +346,7 @@
|
||||
#define FUNC_GPIO32_GPIO32 1
|
||||
#define FUNC_GPIO32_GPIO32_0 0
|
||||
|
||||
// Strapping: Diag Group Sel0
|
||||
#define PERIPHS_IO_MUX_U_PAD_GPIO33 (REG_IO_MUX_BASE + 0x88)
|
||||
#define FUNC_GPIO33_DBG_PSRAM_DQ5_PAD 4
|
||||
#define FUNC_GPIO33_EMAC_PHY_TXEN_PAD 3
|
||||
@@ -371,6 +354,7 @@
|
||||
#define FUNC_GPIO33_GPIO33 1
|
||||
#define FUNC_GPIO33_GPIO33_0 0
|
||||
|
||||
// Strapping: USB2JTAG select: 1->usb2jtag 0-> pad_jtag
|
||||
#define PERIPHS_IO_MUX_U_PAD_GPIO34 (REG_IO_MUX_BASE + 0x8C)
|
||||
#define FUNC_GPIO34_DBG_PSRAM_DQ6_PAD 4
|
||||
#define FUNC_GPIO34_EMAC_PHY_TXD0_PAD 3
|
||||
@@ -378,6 +362,7 @@
|
||||
#define FUNC_GPIO34_GPIO34 1
|
||||
#define FUNC_GPIO34_GPIO34_0 0
|
||||
|
||||
// Strapping: Boot Mode select 3
|
||||
#define PERIPHS_IO_MUX_U_PAD_GPIO35 (REG_IO_MUX_BASE + 0x90)
|
||||
#define FUNC_GPIO35_DBG_PSRAM_DQ7_PAD 4
|
||||
#define FUNC_GPIO35_EMAC_PHY_TXD1_PAD 3
|
||||
@@ -385,6 +370,7 @@
|
||||
#define FUNC_GPIO35_GPIO35 1
|
||||
#define FUNC_GPIO35_GPIO35_0 0
|
||||
|
||||
// Strapping: Boot Mode select 2
|
||||
#define PERIPHS_IO_MUX_U_PAD_GPIO36 (REG_IO_MUX_BASE + 0x94)
|
||||
#define FUNC_GPIO36_DBG_PSRAM_DQS_0_PAD 4
|
||||
#define FUNC_GPIO36_EMAC_PHY_TXER_PAD 3
|
||||
@@ -392,11 +378,13 @@
|
||||
#define FUNC_GPIO36_GPIO36 1
|
||||
#define FUNC_GPIO36_GPIO36_0 0
|
||||
|
||||
// Strapping: Boot Mode select 1
|
||||
#define PERIPHS_IO_MUX_U_PAD_GPIO37 (REG_IO_MUX_BASE + 0x98)
|
||||
#define FUNC_GPIO37_SPI2_IO7_PAD 2
|
||||
#define FUNC_GPIO37_GPIO37 1
|
||||
#define FUNC_GPIO37_UART0_TXD_PAD 0
|
||||
|
||||
// Strapping: Boot Mode select 0
|
||||
#define PERIPHS_IO_MUX_U_PAD_GPIO38 (REG_IO_MUX_BASE + 0x9C)
|
||||
#define FUNC_GPIO38_SPI2_DQS_PAD 2
|
||||
#define FUNC_GPIO38_GPIO38 1
|
||||
|
||||
@@ -10,7 +10,6 @@
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
//TODO: IDF-13419
|
||||
/** Type of GPIO register
|
||||
* IO MUX gpio configuration register
|
||||
*/
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* SPDX-FileCopyrightText: 2017-2021 Espressif Systems (Shanghai) CO LTD
|
||||
* SPDX-FileCopyrightText: 2017-2025 Espressif Systems (Shanghai) CO LTD
|
||||
*
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
*/
|
||||
@@ -143,19 +143,6 @@
|
||||
#define GPIO_PAD_PULLUP(num) do{PIN_PULLUP_DIS(IOMUX_REG_GPIO##num);PIN_PULLDWN_EN(IOMUX_REG_GPIO##num);}while(0)
|
||||
#define GPIO_PAD_SET_DRV(num, drv) PIN_SET_DRV(IOMUX_REG_GPIO##num, drv)
|
||||
|
||||
#define SPI_CS1_GPIO_NUM 26
|
||||
#define SPI_HD_GPIO_NUM 27
|
||||
#define SPI_WP_GPIO_NUM 28
|
||||
#define SPI_CS0_GPIO_NUM 29
|
||||
#define SPI_CLK_GPIO_NUM 30
|
||||
#define SPI_Q_GPIO_NUM 31
|
||||
#define SPI_D_GPIO_NUM 32
|
||||
#define SPI_D4_GPIO_NUM 33
|
||||
#define SPI_D5_GPIO_NUM 34
|
||||
#define SPI_D6_GPIO_NUM 35
|
||||
#define SPI_D7_GPIO_NUM 36
|
||||
#define SPI_DQS_GPIO_NUM 37
|
||||
|
||||
#define MAX_RTC_GPIO_NUM 21
|
||||
#define MAX_PAD_GPIO_NUM 46
|
||||
#define MAX_GPIO_NUM 53
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* SPDX-FileCopyrightText: 2017-2021 Espressif Systems (Shanghai) CO LTD
|
||||
* SPDX-FileCopyrightText: 2017-2025 Espressif Systems (Shanghai) CO LTD
|
||||
*
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
*/
|
||||
@@ -143,18 +143,6 @@
|
||||
#define GPIO_PAD_PULLUP(num) do{PIN_PULLUP_DIS(IOMUX_REG_GPIO##num);PIN_PULLDWN_EN(IOMUX_REG_GPIO##num);}while(0)
|
||||
#define GPIO_PAD_SET_DRV(num, drv) PIN_SET_DRV(IOMUX_REG_GPIO##num, drv)
|
||||
|
||||
#define SPI_CS1_GPIO_NUM 26
|
||||
#define SPI_HD_GPIO_NUM 27
|
||||
#define SPI_WP_GPIO_NUM 28
|
||||
#define SPI_CS0_GPIO_NUM 29
|
||||
#define SPI_CLK_GPIO_NUM 30
|
||||
#define SPI_Q_GPIO_NUM 31
|
||||
#define SPI_D_GPIO_NUM 32
|
||||
#define SPI_D4_GPIO_NUM 33
|
||||
#define SPI_D5_GPIO_NUM 34
|
||||
#define SPI_D6_GPIO_NUM 35
|
||||
#define SPI_D7_GPIO_NUM 36
|
||||
#define SPI_DQS_GPIO_NUM 37
|
||||
#define SD_CLK_GPIO_NUM 12
|
||||
#define SD_CMD_GPIO_NUM 11
|
||||
#define SD_DATA0_GPIO_NUM 13
|
||||
|
||||
Reference in New Issue
Block a user