sdio: c6 support

This commit is contained in:
Armando
2023-01-18 02:34:46 +00:00
committed by Armando (Dou Yiwen)
parent 38551239fd
commit f1de9faa71
25 changed files with 645 additions and 210 deletions
+2 -1
View File
@@ -16,7 +16,8 @@ set(srcs
"uart_periph.c"
"temperature_sensor_periph.c"
"timer_periph.c"
"twai_periph.c")
"twai_periph.c"
"sdio_slave_periph.c")
add_prefix(srcs "${CMAKE_CURRENT_LIST_DIR}/" "${srcs}")
@@ -127,6 +127,10 @@ config SOC_SECURE_BOOT_SUPPORTED
bool
default y
config SOC_SDIO_SLAVE_SUPPORTED
bool
default y
config SOC_BOD_SUPPORTED
bool
default y
@@ -1,5 +1,5 @@
/**
* SPDX-FileCopyrightText: 2022 Espressif Systems (Shanghai) CO LTD
* SPDX-FileCopyrightText: 2022-2023 Espressif Systems (Shanghai) CO LTD
*
* SPDX-License-Identifier: Apache-2.0
*/
@@ -2654,7 +2654,7 @@ typedef union {
} slchost_inf_st_reg_t;
typedef struct slchost_dev_t {
typedef struct host_dev_t {
uint32_t reserved_000[4];
volatile slchost_func2_0_reg_t func2_0;
volatile slchost_func2_1_reg_t func2_1;
@@ -2725,12 +2725,12 @@ typedef struct slchost_dev_t {
uint32_t reserved_180[28];
volatile slchost_conf_reg_t conf;
volatile slchost_inf_st_reg_t inf_st;
} slchost_dev_t;
} host_dev_t;
extern slchost_dev_t HOST;
extern host_dev_t HOST;
#ifndef __cplusplus
_Static_assert(sizeof(slchost_dev_t) == 0x1f8, "Invalid size of slchost_dev_t structure");
_Static_assert(sizeof(host_dev_t) == 0x1f8, "Invalid size of host_dev_t structure");
#endif
#ifdef __cplusplus
@@ -1,5 +1,5 @@
/*
* SPDX-FileCopyrightText: 2022 Espressif Systems (Shanghai) CO LTD
* SPDX-FileCopyrightText: 2022-2023 Espressif Systems (Shanghai) CO LTD
*
* SPDX-License-Identifier: Apache-2.0
*/
@@ -33,6 +33,7 @@ typedef enum {
PERIPH_ECC_MODULE,
PERIPH_HMAC_MODULE,
PERIPH_DS_MODULE,
PERIPH_SDIO_SLAVE_MODULE,
PERIPH_GDMA_MODULE,
PERIPH_MCPWM0_MODULE,
PERIPH_ETM_MODULE,
@@ -0,0 +1,14 @@
/*
* SPDX-FileCopyrightText: 2022-2023 Espressif Systems (Shanghai) CO LTD
*
* SPDX-License-Identifier: Apache-2.0
*/
#pragma once
#define SDIO_SLAVE_SLOT0_IOMUX_PIN_NUM_CMD 18
#define SDIO_SLAVE_SLOT0_IOMUX_PIN_NUM_CLK 19
#define SDIO_SLAVE_SLOT0_IOMUX_PIN_NUM_D0 20
#define SDIO_SLAVE_SLOT0_IOMUX_PIN_NUM_D1 21
#define SDIO_SLAVE_SLOT0_IOMUX_PIN_NUM_D2 22
#define SDIO_SLAVE_SLOT0_IOMUX_PIN_NUM_D3 23
#define SDIO_SLAVE_SLOT0_FUNC 0
@@ -60,6 +60,7 @@
#define SOC_ECC_SUPPORTED 1
#define SOC_FLASH_ENC_SUPPORTED 1
#define SOC_SECURE_BOOT_SUPPORTED 1
#define SOC_SDIO_SLAVE_SUPPORTED 1
#define SOC_BOD_SUPPORTED 1
#define SOC_APM_SUPPORTED 1
@@ -0,0 +1,20 @@
/*
* SPDX-FileCopyrightText: 2022-2023 Espressif Systems (Shanghai) CO LTD
*
* SPDX-License-Identifier: Apache-2.0
*/
#include <stdint.h>
#include "soc/sdio_slave_periph.h"
#include "soc/sdio_slave_pins.h"
const sdio_slave_slot_info_t sdio_slave_slot_info[1] = {
{
.clk_gpio = SDIO_SLAVE_SLOT0_IOMUX_PIN_NUM_CLK,
.cmd_gpio = SDIO_SLAVE_SLOT0_IOMUX_PIN_NUM_CMD,
.d0_gpio = SDIO_SLAVE_SLOT0_IOMUX_PIN_NUM_D0,
.d1_gpio = SDIO_SLAVE_SLOT0_IOMUX_PIN_NUM_D1,
.d2_gpio = SDIO_SLAVE_SLOT0_IOMUX_PIN_NUM_D2,
.d3_gpio = SDIO_SLAVE_SLOT0_IOMUX_PIN_NUM_D3,
.func = SDIO_SLAVE_SLOT0_FUNC,
},
};