Merge branch 'refactor/make_peripheral_ctrl_as_private_api' into 'master'

global: make periph enable/disable APIs private

Closes IDF-3647

See merge request espressif/esp-idf!15632
This commit is contained in:
morris
2021-11-08 07:31:01 +00:00
92 changed files with 281 additions and 376 deletions

View File

@@ -10,7 +10,7 @@
#ifndef BOOTLOADER_BUILD
#include "esp_system.h"
#include "driver/periph_ctrl.h"
#include "esp_private/periph_ctrl.h"
__attribute__((weak)) void bootloader_fill_random(void *buffer, size_t length)
{

View File

@@ -14,7 +14,7 @@
#include "soc/io_mux_reg.h"
#ifndef BOOTLOADER_BUILD
#include "driver/periph_ctrl.h"
#include "esp_private/periph_ctrl.h"
#endif
void bootloader_random_enable(void)

View File

@@ -17,7 +17,7 @@
#include "hal/adc_ll.h"
#ifndef BOOTLOADER_BUILD
#include "driver/periph_ctrl.h"
#include "esp_private/periph_ctrl.h"
#endif
void bootloader_random_enable(void)

View File

@@ -29,7 +29,7 @@
#include "esp_err.h"
#include "esp_log.h"
#include "esp_pm.h"
#include "driver/periph_ctrl.h"
#include "esp_private/periph_ctrl.h"
#include "soc/rtc.h"
#include "soc/soc_memory_layout.h"
#include "soc/dport_reg.h"

View File

@@ -28,7 +28,7 @@
#include "esp_log.h"
#include "esp_pm.h"
#include "esp_ipc.h"
#include "driver/periph_ctrl.h"
#include "esp_private/periph_ctrl.h"
#include "soc/rtc.h"
#include "soc/rtc_cntl_reg.h"
#include "soc/soc_memory_layout.h"

View File

@@ -29,7 +29,7 @@
#include "esp_log.h"
#include "esp_pm.h"
#include "esp_ipc.h"
#include "driver/periph_ctrl.h"
#include "esp_private/periph_ctrl.h"
#include "soc/rtc.h"
#include "soc/rtc_cntl_reg.h"
#include "soc/soc_memory_layout.h"

View File

@@ -18,7 +18,7 @@ set(srcs
"timer.c"
"uart.c")
set(includes "include" "${target}/include")
set(includes "include" "${target}/include" "deprecated")
if(${target} STREQUAL "esp32")
# SDMMC and MCPWM are in ESP32 only.

View File

@@ -21,7 +21,7 @@
#include "hal/cpu_hal.h"
#include "hal/cpu_ll.h"
#include "hal/gpio_hal.h"
#include "driver/periph_ctrl.h"
#include "esp_private/periph_ctrl.h"
#include "esp_rom_gpio.h"
#include "freertos/FreeRTOS.h"
#include "driver/dedic_gpio.h"

View File

@@ -0,0 +1,8 @@
/*
* SPDX-FileCopyrightText: 2015-2021 Espressif Systems (Shanghai) CO LTD
*
* SPDX-License-Identifier: Apache-2.0
*/
#pragma once
#warning driver/periph_ctrl.h header is no longer used, and will be removed in future versions.
#include "esp_private/periph_ctrl.h"

View File

@@ -18,7 +18,7 @@
#include "freertos/timers.h"
#include "freertos/ringbuf.h"
#include "esp32c3/rom/ets_sys.h"
#include "driver/periph_ctrl.h"
#include "esp_private/periph_ctrl.h"
#include "driver/gpio.h"
#include "driver/adc.h"
#include "hal/adc_types.h"

View File

@@ -18,7 +18,7 @@
#include "freertos/timers.h"
#include "freertos/ringbuf.h"
#include "esp32h2/rom/ets_sys.h"
#include "driver/periph_ctrl.h"
#include "esp_private/periph_ctrl.h"
#include "driver/gpio.h"
#include "driver/adc.h"
#include "hal/adc_types.h"

View File

@@ -16,7 +16,7 @@
#include "freertos/timers.h"
#include "esp_pm.h"
#include "esp_intr_alloc.h"
#include "driver/periph_ctrl.h"
#include "esp_private/periph_ctrl.h"
#include "driver/rtc_io.h"
#include "driver/rtc_cntl.h"
#include "driver/gpio.h"

View File

@@ -15,7 +15,7 @@
#include "esp_intr_alloc.h"
#include "esp_log.h"
#include "esp_check.h"
#include "driver/periph_ctrl.h"
#include "esp_private/periph_ctrl.h"
#include "esp_private/gdma.h"
#include "hal/gdma_hal.h"
#include "hal/gdma_ll.h"

View File

@@ -22,7 +22,7 @@
#include "hal/gpio_hal.h"
#include "soc/i2c_periph.h"
#include "driver/i2c.h"
#include "driver/periph_ctrl.h"
#include "esp_private/periph_ctrl.h"
#include "esp_rom_gpio.h"
#include "esp_rom_sys.h"
#include <sys/param.h>

View File

@@ -41,6 +41,7 @@
#include "esp_efuse.h"
#include "esp_rom_gpio.h"
#include "esp_private/i2s_platform.h"
#include "esp_private/periph_ctrl.h"
#include "sdkconfig.h"

View File

@@ -14,7 +14,6 @@
#include "soc/rtc_periph.h"
#include "soc/soc_caps.h"
#include "hal/i2s_types.h"
#include "driver/periph_ctrl.h"
#include "esp_intr_alloc.h"
#if SOC_I2S_SUPPORTS_ADC

View File

@@ -11,7 +11,6 @@
#include "soc/soc.h"
#include "hal/ledc_types.h"
#include "driver/gpio.h"
#include "driver/periph_ctrl.h"
#ifdef __cplusplus
extern "C" {

View File

@@ -1,109 +0,0 @@
/*
* SPDX-FileCopyrightText: 2015-2021 Espressif Systems (Shanghai) CO LTD
*
* SPDX-License-Identifier: Apache-2.0
*/
#ifndef _DRIVER_PERIPH_CTRL_H_
#define _DRIVER_PERIPH_CTRL_H_
#include "soc/periph_defs.h"
#ifdef __cplusplus
extern "C" {
#endif
/**
* @brief enable peripheral module
*
* @param[in] periph : Peripheral module name
*
* Clock for the module will be ungated, and reset de-asserted.
*
* @note If periph_module_enable is called a number of times,
* periph_module_disable has to be called the same number of times
* in order to put the peripheral into disabled state.
*
* @return NULL
*
*/
void periph_module_enable(periph_module_t periph);
/**
* @brief disable peripheral module
*
* @param[in] periph : Peripheral module name
*
* Clock for the module will be gated, reset asserted.
*
* @note If periph_module_enable is called a number of times,
* periph_module_disable has to be called the same number of times
* in order to put the peripheral into disabled state.
*
* @return NULL
*
*/
void periph_module_disable(periph_module_t periph);
/**
* @brief reset peripheral module
*
* @param[in] periph : Peripheral module name
*
* Reset will asserted then de-assrted for the peripheral.
*
* Calling this function does not enable or disable the clock for the module.
*
* @return NULL
*
*/
void periph_module_reset(periph_module_t periph);
/**
* @brief enable wifi bt common module
*
* @note If wifi_bt_common_module_enable is called a number of times,
* wifi_bt_common_module_disable has to be called the same number of times
* in order to put the peripheral into disabled state.
*
* @return NULL
*
*/
void wifi_bt_common_module_enable(void);
/**
* @brief disable wifi bt common module
*
* @note If wifi_bt_common_module_enable is called a number of times,
* wifi_bt_common_module_disable has to be called the same number of times
* in order to put the peripheral into disabled state.
*
* @return NULL
*
*/
void wifi_bt_common_module_disable(void);
/**
* @brief enable wifi module
*
* @note Enable wifi module only.
*
* @return NULL
*
*/
void wifi_module_enable(void);
/**
* @brief disable wifi module
*
* @note Disable wifi module only.
*
* @return NULL
*
*/
void wifi_module_disable(void);
#ifdef __cplusplus
}
#endif
#endif /* _DRIVER_PERIPH_CTRL_H_ */

View File

@@ -0,0 +1,79 @@
/*
* SPDX-FileCopyrightText: 2015-2021 Espressif Systems (Shanghai) CO LTD
*
* SPDX-License-Identifier: Apache-2.0
*/
#pragma once
#include "soc/periph_defs.h"
#ifdef __cplusplus
extern "C" {
#endif
/**
* @brief Enable peripheral module by un-gating the clock and de-asserting the reset signal.
*
* @param[in] periph Peripheral module
*
* @note If @c periph_module_enable() is called a number of times,
* @c periph_module_disable() has to be called the same number of times,
* in order to put the peripheral into disabled state.
*/
void periph_module_enable(periph_module_t periph);
/**
* @brief Disable peripheral module by gating the clock and asserting the reset signal.
*
* @param[in] periph Peripheral module
*
* @note If @c periph_module_enable() is called a number of times,
* @c periph_module_disable() has to be called the same number of times,
* in order to put the peripheral into disabled state.
*/
void periph_module_disable(periph_module_t periph);
/**
* @brief Reset peripheral module by asserting and de-asserting the reset signal.
*
* @param[in] periph Peripheral module
*
* @note Calling this function does not enable or disable the clock for the module.
*/
void periph_module_reset(periph_module_t periph);
/**
* @brief Enable Wi-Fi and BT common module
*
* @note If @c wifi_bt_common_module_enable() is called a number of times,
* @c wifi_bt_common_module_disable() has to be called the same number of times,
* in order to put the peripheral into disabled state.
*/
void wifi_bt_common_module_enable(void);
/**
* @brief Disable Wi-Fi and BT common module
*
* @note If @c wifi_bt_common_module_enable() is called a number of times,
* @c wifi_bt_common_module_disable() has to be called the same number of times,
* in order to put the peripheral into disabled state.
*/
void wifi_bt_common_module_disable(void);
/**
* @brief Enable Wi-Fi module
*
* @note Calling this function will only enable Wi-Fi module.
*/
void wifi_module_enable(void);
/**
* @brief Disable Wi-Fi module
*
* @note Calling this function will only disable Wi-Fi module.
*/
void wifi_module_disable(void);
#ifdef __cplusplus
}
#endif

View File

@@ -4,7 +4,7 @@
* SPDX-License-Identifier: Apache-2.0
*/
#include <string.h>
#include <esp_types.h>
#include "esp_types.h"
#include "freertos/FreeRTOS.h"
#include "freertos/semphr.h"
#include "esp_log.h"
@@ -19,6 +19,7 @@
#include "esp_rom_gpio.h"
#include "esp_rom_sys.h"
#include "soc/clk_ctrl_os.h"
#include "esp_private/periph_ctrl.h"
static const char *LEDC_TAG = "ledc";

View File

@@ -20,7 +20,7 @@
#include "hal/gpio_hal.h"
#include "hal/mcpwm_ll.h"
#include "driver/mcpwm.h"
#include "driver/periph_ctrl.h"
#include "esp_private/periph_ctrl.h"
static const char *TAG = "mcpwm";

View File

@@ -8,7 +8,7 @@
#include "esp_check.h"
#include "soc/soc_caps.h"
#if SOC_PCNT_SUPPORTED
#include "driver/periph_ctrl.h"
#include "esp_private/periph_ctrl.h"
#include "driver/pcnt.h"
#include "hal/pcnt_hal.h"
#include "hal/pcnt_ll.h"

View File

@@ -6,7 +6,7 @@
#include "freertos/FreeRTOS.h"
#include "hal/clk_gate_ll.h"
#include "esp_attr.h"
#include "driver/periph_ctrl.h"
#include "esp_private/periph_ctrl.h"
static portMUX_TYPE periph_spinlock = portMUX_INITIALIZER_UNLOCKED;

View File

@@ -12,7 +12,7 @@
#include "esp_log.h"
#include "esp_check.h"
#include "driver/gpio.h"
#include "driver/periph_ctrl.h"
#include "esp_private/periph_ctrl.h"
#include "driver/rmt.h"
#include "freertos/FreeRTOS.h"
#include "freertos/task.h"

View File

@@ -86,7 +86,7 @@ The driver of FIFOs works as below:
#include "soc/gpio_periph.h"
#include "hal/cpu_hal.h"
#include "freertos/semphr.h"
#include "driver/periph_ctrl.h"
#include "esp_private/periph_ctrl.h"
#include "driver/gpio.h"
#include "hal/sdio_slave_hal.h"
#include "hal/gpio_hal.h"

View File

@@ -16,7 +16,7 @@
#include "esp_rom_sys.h"
#include "driver/gpio.h"
#include "driver/sdmmc_host.h"
#include "driver/periph_ctrl.h"
#include "esp_private/periph_ctrl.h"
#include "sdmmc_private.h"
#include "freertos/FreeRTOS.h"
#include "freertos/semphr.h"

View File

@@ -18,7 +18,7 @@
#include "soc/soc_pins.h"
#include "soc/lldesc.h"
#include "driver/gpio.h"
#include "driver/periph_ctrl.h"
#include "esp_private/periph_ctrl.h"
#include "esp_heap_caps.h"
#include "driver/spi_common_internal.h"
#include "stdatomic.h"

View File

@@ -20,7 +20,7 @@
#include "soc/i2c_periph.h"
#include "esp_system.h"
#include "soc/uart_struct.h"
#include "driver/periph_ctrl.h"
#include "esp_private/periph_ctrl.h"
#include "esp_rom_gpio.h"
#include "hal/gpio_hal.h"
#include "hal/uart_ll.h"

View File

@@ -21,7 +21,6 @@
#include "freertos/queue.h"
#include "soc/soc_caps.h"
#if SOC_PCNT_SUPPORTED
#include "driver/periph_ctrl.h"
#include "driver/gpio.h"
#include "driver/pcnt.h"
#include "driver/ledc.h"

View File

@@ -11,7 +11,7 @@
#include "esp_intr_alloc.h"
#include "freertos/FreeRTOS.h"
#include "driver/timer.h"
#include "driver/periph_ctrl.h"
#include "esp_private/periph_ctrl.h"
#include "hal/timer_hal.h"
#include "hal/timer_ll.h"
#include "hal/check.h"

View File

@@ -17,7 +17,7 @@
#include "esp_attr.h"
#include "esp_heap_caps.h"
#include "driver/gpio.h"
#include "driver/periph_ctrl.h"
#include "esp_private/periph_ctrl.h"
#include "driver/twai.h"
#include "soc/soc_caps.h"
#include "soc/twai_periph.h"

View File

@@ -21,7 +21,7 @@
#include "driver/uart.h"
#include "driver/gpio.h"
#include "driver/uart_select.h"
#include "driver/periph_ctrl.h"
#include "esp_private/periph_ctrl.h"
#include "sdkconfig.h"
#include "esp_rom_gpio.h"

View File

@@ -1,20 +1,12 @@
// Copyright 2019 Espressif Systems (Shanghai) PTE LTD
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
/*
* SPDX-FileCopyrightText: 2019-2021 Espressif Systems (Shanghai) CO LTD
*
* SPDX-License-Identifier: Apache-2.0
*/
#include <string.h>
#include <stdlib.h>
#include <sys/cdefs.h>
#include "driver/periph_ctrl.h"
#include "esp_private/periph_ctrl.h"
#include "driver/gpio.h"
#include "esp_attr.h"
#include "esp_log.h"

View File

@@ -8,7 +8,7 @@
#include "freertos/FreeRTOS.h"
#include "freertos/task.h"
#include "esp_log.h"
#include "driver/periph_ctrl.h"
#include "esp_private/periph_ctrl.h"
#include "driver/timer.h"
#include "esp_event.h"

View File

@@ -7,7 +7,7 @@
#include "freertos/FreeRTOS.h"
#include "freertos/task.h"
#include "esp_log.h"
#include "driver/periph_ctrl.h"
#include "esp_private/periph_ctrl.h"
#include "driver/timer.h"
#include "esp_event.h"

View File

@@ -10,7 +10,7 @@
#include "soc/soc_caps.h"
#include "hal/gdma_ll.h"
#include "hal/gdma_hal.h"
#include "driver/periph_ctrl.h"
#include "esp_private/periph_ctrl.h"
#include "esp_log.h"
#include "esp_attr.h"
#include "esp_err.h"

View File

@@ -27,7 +27,7 @@
#include "driver/gpio.h"
#include "hal/gpio_hal.h"
#include "driver/spi_common_internal.h"
#include "driver/periph_ctrl.h"
#include "esp_private/periph_ctrl.h"
#include "bootloader_common.h"
#include "esp_rom_gpio.h"
#include "bootloader_flash_config.h"

View File

@@ -10,7 +10,7 @@
#include "freertos/FreeRTOS.h"
#include "freertos/task.h"
#include "driver/periph_ctrl.h"
#include "esp_private/periph_ctrl.h"
#include "esp_crypto_lock.h"
#include "hal/ds_hal.h"
#include "hal/ds_ll.h"

View File

@@ -5,7 +5,7 @@
*/
#include <string.h>
#include "driver/periph_ctrl.h"
#include "esp_private/periph_ctrl.h"
#include "esp32c3/rom/hmac.h"
#include "esp32c3/rom/ets_sys.h"
#include "esp_efuse.h"

View File

@@ -10,7 +10,7 @@
#include "freertos/FreeRTOS.h"
#include "freertos/task.h"
#include "driver/periph_ctrl.h"
#include "esp_private/periph_ctrl.h"
#include "esp_crypto_lock.h"
#include "hal/ds_hal.h"
#include "hal/ds_ll.h"

View File

@@ -5,7 +5,7 @@
*/
#include <string.h>
#include "driver/periph_ctrl.h"
#include "esp_private/periph_ctrl.h"
#include "esp32c3/rom/hmac.h"
#include "esp32c3/rom/ets_sys.h"
#include "esp_efuse.h"

View File

@@ -31,7 +31,7 @@
#include "driver/gpio.h"
#include "driver/spi_common_internal.h"
#include "driver/spi_common.h"
#include "driver/periph_ctrl.h"
#include "esp_private/periph_ctrl.h"
#include "bootloader_common.h"
#if CONFIG_SPIRAM

View File

@@ -10,7 +10,7 @@
#include "freertos/FreeRTOS.h"
#include "freertos/task.h"
#include "driver/periph_ctrl.h"
#include "esp_private/periph_ctrl.h"
#include "esp_crypto_lock.h"
#include "hal/ds_hal.h"
#include "hal/ds_ll.h"

View File

@@ -5,7 +5,7 @@
*/
#include <string.h>
#include "driver/periph_ctrl.h"
#include "esp_private/periph_ctrl.h"
#include "esp32s3/rom/efuse.h"
#include "esp32s3/rom/hmac.h"
#include "esp32s3/rom/ets_sys.h"

View File

@@ -23,7 +23,7 @@
#include "soc/efuse_reg.h"
#include "driver/gpio.h"
#include "driver/spi_common.h"
#include "driver/periph_ctrl.h"
#include "esp_private/periph_ctrl.h"
#if CONFIG_SPIRAM_MODE_OCT
#include "soc/rtc.h"

View File

@@ -34,7 +34,7 @@
#include "hal/gpio_hal.h"
#include "driver/spi_common_internal.h"
#include "driver/spi_common.h"
#include "driver/periph_ctrl.h"
#include "esp_private/periph_ctrl.h"
#include "bootloader_common.h"
#if CONFIG_SPIRAM_MODE_QUAD

View File

@@ -12,7 +12,7 @@
#include <stdio.h>
#include <stdlib.h>
#include "esp32/rom/lldesc.h"
#include "driver/periph_ctrl.h"
#include "esp_private/periph_ctrl.h"
#include "hal/gpio_hal.h"
#include "freertos/FreeRTOS.h"
#include "freertos/task.h"

View File

@@ -16,7 +16,7 @@
#include "freertos/queue.h"
#include "unity.h"
#include "esp_intr_alloc.h"
#include "driver/periph_ctrl.h"
#include "esp_private/periph_ctrl.h"
#include "driver/timer.h"
#include "soc/soc_caps.h"
#include "soc/spi_periph.h"

View File

@@ -12,7 +12,7 @@
#include <stdlib.h>
#include <string.h>
#include "esp32/rom/lldesc.h"
#include "driver/periph_ctrl.h"
#include "esp_private/periph_ctrl.h"
#include "hal/gpio_hal.h"
#include "freertos/FreeRTOS.h"
#include "freertos/task.h"

View File

@@ -32,7 +32,7 @@
#include "hal/dma_types.h"
#include "hal/gpio_hal.h"
#include "driver/gpio.h"
#include "driver/periph_ctrl.h"
#include "esp_private/periph_ctrl.h"
#if SOC_I2S_LCD_I80_VARIANT
#include "esp_private/i2s_platform.h"
#include "soc/lcd_periph.h"

View File

@@ -27,7 +27,7 @@
#include "hal/gpio_hal.h"
#include "esp_private/gdma.h"
#include "driver/gpio.h"
#include "driver/periph_ctrl.h"
#include "esp_private/periph_ctrl.h"
#if SOC_LCDCAM_SUPPORTED
#include "esp_lcd_common.h"
#include "soc/lcd_periph.h"

View File

@@ -29,7 +29,7 @@
#include "hal/gpio_hal.h"
#include "esp_private/gdma.h"
#include "driver/gpio.h"
#include "driver/periph_ctrl.h"
#include "esp_private/periph_ctrl.h"
#if CONFIG_SPIRAM
#include "spiram.h"
#endif

View File

@@ -23,7 +23,7 @@
#include "phy.h"
#include "phy_init_data.h"
#include "esp_coexist_internal.h"
#include "driver/periph_ctrl.h"
#include "esp_private/periph_ctrl.h"
#include "esp_private/wifi.h"
#include "esp_rom_crc.h"
#include "esp_rom_sys.h"

View File

@@ -1,23 +1,15 @@
// Copyright 2015-2020 Espressif Systems (Shanghai) PTE LTD
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
/*
* SPDX-FileCopyrightText: 2015-2021 Espressif Systems (Shanghai) CO LTD
*
* SPDX-License-Identifier: Apache-2.0
*/
#include <string.h>
#include <sys/param.h>
#include "esp_log.h"
#include "esp_check.h"
#include "driver/spi_master.h"
#include "driver/periph_ctrl.h"
#include "esp_private/periph_ctrl.h"
#include "essl_internal.h"
#include "essl_spi.h"
#include "essl_spi/esp32s2_defs.h"

View File

@@ -18,7 +18,7 @@
#include "esp_log.h"
#include "esp_freertos_hooks.h"
#include "soc/timer_periph.h"
#include "driver/periph_ctrl.h"
#include "esp_private/periph_ctrl.h"
#include "esp_int_wdt.h"
#include "esp_private/system_internal.h"
#include "hal/cpu_hal.h"

View File

@@ -1,24 +1,16 @@
// Copyright 2015-2017 Espressif Systems (Shanghai) PTE LTD
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
/*
* SPDX-FileCopyrightText: 2015-2021 Espressif Systems (Shanghai) CO LTD
*
* SPDX-License-Identifier: Apache-2.0
*/
#include "soc/rtc.h"
#include "soc/dport_reg.h"
#include "soc/dport_access.h"
#include "soc/i2s_reg.h"
#include "hal/cpu_hal.h"
#include "driver/periph_ctrl.h"
#include "esp_private/periph_ctrl.h"
#include "bootloader_clock.h"
#include "hal/wdt_hal.h"

View File

@@ -1,16 +1,8 @@
// Copyright 2015-2020 Espressif Systems (Shanghai) PTE LTD
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
/*
* SPDX-FileCopyrightText: 2015-2021 Espressif Systems (Shanghai) CO LTD
*
* SPDX-License-Identifier: Apache-2.0
*/
#include <stdint.h>
#include <sys/cdefs.h>
@@ -31,7 +23,7 @@
#include "soc/i2s_reg.h"
#include "hal/cpu_hal.h"
#include "hal/wdt_hal.h"
#include "driver/periph_ctrl.h"
#include "esp_private/periph_ctrl.h"
#include "bootloader_clock.h"
#include "soc/syscon_reg.h"
#include "esp_rom_uart.h"

View File

@@ -1,16 +1,8 @@
// Copyright 2015-2020 Espressif Systems (Shanghai) PTE LTD
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
/*
* SPDX-FileCopyrightText: 2015-2021 Espressif Systems (Shanghai) CO LTD
*
* SPDX-License-Identifier: Apache-2.0
*/
#include <stdint.h>
#include <sys/cdefs.h>
@@ -32,7 +24,7 @@
#include "soc/i2s_reg.h"
#include "hal/cpu_hal.h"
#include "hal/wdt_hal.h"
#include "driver/periph_ctrl.h"
#include "esp_private/periph_ctrl.h"
#include "bootloader_clock.h"
#include "soc/syscon_reg.h"
#include "esp_rom_uart.h"

View File

@@ -1,17 +1,9 @@
// Copyright 2015-2017 Espressif Systems (Shanghai) PTE LTD
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
/*
* SPDX-FileCopyrightText: 2015-2021 Espressif Systems (Shanghai) CO LTD
*
* SPDX-License-Identifier: Apache-2.0
*/
#include <stdint.h>
#include <sys/cdefs.h>
@@ -32,7 +24,7 @@
#include "soc/i2s_reg.h"
#include "hal/cpu_hal.h"
#include "hal/wdt_hal.h"
#include "driver/periph_ctrl.h"
#include "esp_private/periph_ctrl.h"
#include "bootloader_clock.h"
#include "soc/syscon_reg.h"
#include "hal/clk_gate_ll.h"

View File

@@ -1,17 +1,9 @@
// Copyright 2015-2020 Espressif Systems (Shanghai) PTE LTD
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
/*
* SPDX-FileCopyrightText: 2015-2021 Espressif Systems (Shanghai) CO LTD
*
* SPDX-License-Identifier: Apache-2.0
*/
#include <stdint.h>
#include <sys/cdefs.h>
@@ -32,7 +24,7 @@
#include "soc/i2s_reg.h"
#include "hal/cpu_hal.h"
#include "hal/wdt_hal.h"
#include "driver/periph_ctrl.h"
#include "esp_private/periph_ctrl.h"
#include "bootloader_clock.h"
#include "soc/syscon_reg.h"

View File

@@ -23,7 +23,7 @@
#include "soc/rtc_periph.h"
#include "hal/cpu_hal.h"
#include "hal/wdt_hal.h"
#include "driver/periph_ctrl.h"
#include "esp_private/periph_ctrl.h"
#include "bootloader_clock.h"
#include "soc/syscon_reg.h"
#include "esp_rom_uart.h"

View File

@@ -22,7 +22,7 @@
#include "esp_freertos_hooks.h"
#include "soc/timer_periph.h"
#include "esp_log.h"
#include "driver/periph_ctrl.h"
#include "esp_private/periph_ctrl.h"
#include "esp_task_wdt.h"
#include "esp_private/system_internal.h"
#include "esp_private/crosscore_int.h"

View File

@@ -14,7 +14,7 @@
#include "esp_intr_alloc.h"
#include "esp_log.h"
#include "esp32/clk.h"
#include "driver/periph_ctrl.h"
#include "esp_private/periph_ctrl.h"
#include "soc/soc.h"
#include "soc/timer_group_reg.h"
#include "soc/rtc.h"

View File

@@ -1,16 +1,8 @@
// Copyright 2015-2018 Espressif Systems (Shanghai) PTE LTD
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
/*
* SPDX-FileCopyrightText: 2015-2021 Espressif Systems (Shanghai) CO LTD
*
* SPDX-License-Identifier: Apache-2.0
*/
#include <stddef.h>
#include <stdlib.h>
@@ -42,7 +34,7 @@
#include "soc/syscon_reg.h"
#include "hal/interrupt_controller_hal.h"
#include "phy_init_data.h"
#include "driver/periph_ctrl.h"
#include "esp_private/periph_ctrl.h"
#include "nvs.h"
#include "os.h"
#include "esp_smartconfig.h"

View File

@@ -36,7 +36,7 @@
#include "soc/rtc.h"
#include "soc/syscon_reg.h"
#include "phy_init_data.h"
#include "driver/periph_ctrl.h"
#include "esp_private/periph_ctrl.h"
#include "nvs.h"
#include "os.h"
#include "esp_smartconfig.h"

View File

@@ -36,7 +36,7 @@
#include "soc/syscon_reg.h"
#include "hal/interrupt_controller_hal.h"
#include "phy_init_data.h"
#include "driver/periph_ctrl.h"
#include "esp_private/periph_ctrl.h"
#include "nvs.h"
#include "os.h"
#include "esp_smartconfig.h"

View File

@@ -1,16 +1,8 @@
// Copyright 2015-2020 Espressif Systems (Shanghai) PTE LTD
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
/*
* SPDX-FileCopyrightText: 2015-2021 Espressif Systems (Shanghai) CO LTD
*
* SPDX-License-Identifier: Apache-2.0
*/
#include <stddef.h>
#include <stdlib.h>
@@ -44,7 +36,7 @@
#include "soc/syscon_reg.h"
#include "hal/interrupt_controller_hal.h"
#include "phy_init_data.h"
#include "driver/periph_ctrl.h"
#include "esp_private/periph_ctrl.h"
#include "nvs.h"
#include "os.h"
#include "esp_smartconfig.h"

View File

@@ -38,7 +38,7 @@
#include "soc/cpu.h"
#include <stdio.h>
#include "driver/periph_ctrl.h"
#include "esp_private/periph_ctrl.h"
/* AES uses a spinlock mux not a lock as the underlying block operation

View File

@@ -29,7 +29,7 @@
#include <string.h>
#include "mbedtls/aes.h"
#include "esp_intr_alloc.h"
#include "driver/periph_ctrl.h"
#include "esp_private/periph_ctrl.h"
#include "esp_log.h"
#include "soc/lldesc.h"
#include "esp_heap_caps.h"

View File

@@ -23,7 +23,7 @@
#include "soc/hwcrypto_periph.h"
#include "soc/dport_reg.h"
#include "driver/periph_ctrl.h"
#include "esp_private/periph_ctrl.h"
#include <mbedtls/bignum.h>
#include "bignum_impl.h"
#include <sys/param.h>

View File

@@ -23,7 +23,7 @@
#include <string.h>
#include <sys/param.h>
#include "soc/hwcrypto_periph.h"
#include "driver/periph_ctrl.h"
#include "esp_private/periph_ctrl.h"
#include "mbedtls/bignum.h"
#include "bignum_impl.h"
#include "soc/system_reg.h"

View File

@@ -23,7 +23,7 @@
#include <string.h>
#include <sys/param.h>
#include "soc/hwcrypto_periph.h"
#include "driver/periph_ctrl.h"
#include "esp_private/periph_ctrl.h"
#include "mbedtls/bignum.h"
#include "bignum_impl.h"
#include "soc/system_reg.h"

View File

@@ -21,7 +21,7 @@
*
*/
#include "soc/hwcrypto_periph.h"
#include "driver/periph_ctrl.h"
#include "esp_private/periph_ctrl.h"
#include <mbedtls/bignum.h>
#include "bignum_impl.h"
#include "soc/dport_reg.h"

View File

@@ -21,7 +21,7 @@
*
*/
#include "soc/hwcrypto_periph.h"
#include "driver/periph_ctrl.h"
#include "esp_private/periph_ctrl.h"
#include <mbedtls/bignum.h>
#include "bignum_impl.h"
#include "soc/dport_reg.h"

View File

@@ -38,7 +38,7 @@
#include "freertos/FreeRTOS.h"
#include "freertos/semphr.h"
#include "driver/periph_ctrl.h"
#include "esp_private/periph_ctrl.h"
#include "sys/param.h"
#include "sha/sha_dma.h"

View File

@@ -37,7 +37,7 @@
#include "hal/sha_types.h"
#include "sha/sha_parallel_engine.h"
#include "soc/hwcrypto_periph.h"
#include "driver/periph_ctrl.h"
#include "esp_private/periph_ctrl.h"
/*
Single spinlock for SHA engine memory block

View File

@@ -1,20 +1,12 @@
// Copyright 2020 Espressif Systems (Shanghai) PTE LTD
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
/*
* SPDX-FileCopyrightText: 2020-2021 Espressif Systems (Shanghai) CO LTD
*
* SPDX-License-Identifier: Apache-2.0
*/
#include "sdkconfig.h"
#include "driver/gpio.h"
#include "driver/periph_ctrl.h"
#include "esp_private/periph_ctrl.h"
#include "esp_log.h"
#include "esp_check.h"
#include "esp_rom_gpio.h"

View File

@@ -19,7 +19,7 @@
#include "hal/usb_types_private.h"
#include "soc/gpio_pins.h"
#include "soc/gpio_sig_map.h"
#include "driver/periph_ctrl.h"
#include "esp_private/periph_ctrl.h"
#include "hcd.h"
#include "usb_private.h"
#include "usb/usb_types_ch9.h"

View File

@@ -9,7 +9,7 @@
#include "freertos/FreeRTOS.h"
#include "esp_log.h"
#include "esp_check.h"
#include "driver/periph_ctrl.h"
#include "esp_private/periph_ctrl.h"
#include "esp_private/usb_phy.h"
#include "soc/usb_phy_periph.h"
#include "hal/usb_phy_hal.h"

View File

@@ -62,6 +62,7 @@ This is the documentation for Espressif IoT Development Framework (`esp-idf <htt
API Reference <api-reference/index>
H/W Reference <hw-reference/index>
API Guides <api-guides/index>
ESP-IDF 5.0 Migration Guides <migration-guides/index>
Libraries and Frameworks <libraries-and-frameworks/index>
Contribute <contribute/index>
Versions <versions>

View File

@@ -0,0 +1,8 @@
ESP-IDF 5.0 Migration Guides
****************************
:link_to_translation:`zh_CN:[中文]`
.. toctree::
:maxdepth: 1
Peripherals <peripherals>

View File

@@ -0,0 +1,9 @@
Migrate Peripherals to ESP-IDF 5.0
==================================
Peripheral Clock Gating
-----------------------
As usual, peripheral clock gating is still handled by driver itself, users don't need to take care of the peripheral module clock gating.
However, for advanced users who implement their own drivers based on ``hal`` and ``soc`` components, the previous clock gating include path has been changed from ``driver/periph_ctrl.h`` to ``esp_private/periph_ctrl.h``.

View File

@@ -62,6 +62,7 @@ ESP-IDF 编程指南
API 参考 <api-reference/index>
H/W 参考 <hw-reference/index>
API 指南 <api-guides/index>
ESP-IDF 5.0 迁移指南 <migration-guides/index>
Libraries and Frameworks <libraries-and-frameworks/index>
贡献代码 <contribute/index>
版本 <versions>

View File

@@ -0,0 +1,8 @@
ESP-IDF 5.0 迁移指南
********************
:link_to_translation:`zh_CN:[中文]`
.. toctree::
:maxdepth: 1
外设 <peripherals>

View File

@@ -0,0 +1 @@
.. include:: ../../en/migration-guides/peripherals.rst

View File

@@ -14,7 +14,6 @@
#include "soc/ledc_reg.h"
#include "soc/timer_group_struct.h"
#include "soc/ledc_struct.h"
#include "driver/periph_ctrl.h"
#include "driver/timer.h"
#include "driver/ledc.h"
#include "iot_light.h"

View File

@@ -10,7 +10,7 @@
#include "esp_bt.h"
#include "soc/uhci_periph.h"
#include "driver/uart.h"
#include "driver/periph_ctrl.h"
#include "esp_private/periph_ctrl.h" // for enabling UHCI module, remove it after UHCI driver is released
#include "esp_log.h"
static const char *tag = "CONTROLLER_UART_HCI";

View File

@@ -7,7 +7,7 @@
*/
#include <string.h>
#include "driver/periph_ctrl.h"
#include "esp_private/periph_ctrl.h" // for enabling UHCI module, remove it after UHCI driver is released
#include "driver/gpio.h"
#include "driver/uart.h"
#include "soc/lldesc.h"

View File

@@ -592,7 +592,6 @@ components/esp_eth/include/eth_phy_regs_struct.h
components/esp_eth/src/dm9051.h
components/esp_eth/src/esp_eth.c
components/esp_eth/src/esp_eth_mac_dm9051.c
components/esp_eth/src/esp_eth_mac_esp.c
components/esp_eth/src/esp_eth_mac_openeth.c
components/esp_eth/src/esp_eth_mac_w5500.c
components/esp_eth/src/esp_eth_netif_glue.c
@@ -906,7 +905,6 @@ components/esp_rom/test/test_tjpgd.c
components/esp_serial_slave_link/essl.c
components/esp_serial_slave_link/essl_internal.h
components/esp_serial_slave_link/essl_sdio.c
components/esp_serial_slave_link/essl_spi.c
components/esp_serial_slave_link/include/esp_serial_slave_link/essl.h
components/esp_serial_slave_link/include/esp_serial_slave_link/essl_sdio.h
components/esp_serial_slave_link/include/esp_serial_slave_link/essl_spi.h
@@ -941,30 +939,25 @@ components/esp_system/port/public_compat/cache_err_int.h
components/esp_system/port/public_compat/trax.h
components/esp_system/port/soc/esp32/cache_err_int.c
components/esp_system/port/soc/esp32/cache_err_int.h
components/esp_system/port/soc/esp32/clk.c
components/esp_system/port/soc/esp32/intr.c
components/esp_system/port/soc/esp32/reset_reason.c
components/esp_system/port/soc/esp32/system_internal.c
components/esp_system/port/soc/esp32c3/apb_backup_dma.c
components/esp_system/port/soc/esp32c3/cache_err_int.c
components/esp_system/port/soc/esp32c3/cache_err_int.h
components/esp_system/port/soc/esp32c3/clk.c
components/esp_system/port/soc/esp32c3/reset_reason.c
components/esp_system/port/soc/esp32c3/system_internal.c
components/esp_system/port/soc/esp32h2/apb_backup_dma.c
components/esp_system/port/soc/esp32h2/cache_err_int.c
components/esp_system/port/soc/esp32h2/cache_err_int.h
components/esp_system/port/soc/esp32h2/clk.c
components/esp_system/port/soc/esp32h2/reset_reason.c
components/esp_system/port/soc/esp32h2/system_internal.c
components/esp_system/port/soc/esp32s2/cache_err_int.c
components/esp_system/port/soc/esp32s2/cache_err_int.h
components/esp_system/port/soc/esp32s2/clk.c
components/esp_system/port/soc/esp32s2/reset_reason.c
components/esp_system/port/soc/esp32s2/system_internal.c
components/esp_system/port/soc/esp32s2/usb_console.c
components/esp_system/port/soc/esp32s3/cache_err_int.h
components/esp_system/port/soc/esp32s3/clk.c
components/esp_system/port/soc/esp32s3/reset_reason.c
components/esp_system/port/soc/esp32s3/system_internal.c
components/esp_system/port/soc/esp32s3/usb_console.c
@@ -987,8 +980,6 @@ components/esp_timer/test/test_ets_timer.c
components/esp_websocket_client/esp_websocket_client.c
components/esp_websocket_client/include/esp_websocket_client.h
components/esp_websocket_client/test/test_websocket_client.c
components/esp_wifi/esp32/esp_adapter.c
components/esp_wifi/esp32s3/esp_adapter.c
components/esp_wifi/include/esp_coexist_adapter.h
components/esp_wifi/include/esp_mesh.h
components/esp_wifi/include/esp_mesh_internal.h
@@ -2434,7 +2425,6 @@ components/tinyusb/additions/include_private/descriptors_control.h
components/tinyusb/additions/include_private/usb_descriptors.h
components/tinyusb/additions/src/cdc.c
components/tinyusb/additions/src/descriptors_control.c
components/tinyusb/additions/src/tinyusb.c
components/tinyusb/additions/src/tusb_cdc_acm.c
components/tinyusb/additions/src/tusb_console.c
components/tinyusb/additions/src/tusb_tasks.c
@@ -3753,7 +3743,6 @@ tools/unit-test-app/components/test_utils/ccomp_timer_impl_xtensa.c
tools/unit-test-app/components/test_utils/include/ccomp_timer.h
tools/unit-test-app/components/test_utils/include/test_utils.h
tools/unit-test-app/components/test_utils/private_include/ccomp_timer_impl.h
tools/unit-test-app/components/test_utils/ref_clock_impl_rmt_pcnt.c
tools/unit-test-app/components/test_utils/test/ccomp_timer_test_api.c
tools/unit-test-app/components/test_utils/test/ccomp_timer_test_data.c
tools/unit-test-app/components/test_utils/test/ccomp_timer_test_inst.c

View File

@@ -1,16 +1,8 @@
// Copyright 2017-2020 Espressif Systems (Shanghai) PTE LTD
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
/*
* SPDX-FileCopyrightText: 2017-2021 Espressif Systems (Shanghai) CO LTD
*
* SPDX-License-Identifier: Apache-2.0
*/
/**
* Some unit test cases need to have access to reliable timestamps even when CPU and APB clock frequencies change over time.
@@ -31,7 +23,7 @@
#include "test_utils.h"
#include "freertos/FreeRTOS.h"
#include "esp_intr_alloc.h"
#include "driver/periph_ctrl.h"
#include "esp_private/periph_ctrl.h"
#include "soc/gpio_sig_map.h"
#include "soc/gpio_periph.h"
#include "soc/soc_caps.h"

View File

@@ -5,7 +5,7 @@
*/
#include "test_utils.h"
#include "driver/periph_ctrl.h"
#include "esp_private/periph_ctrl.h"
#include "soc/periph_defs.h"
#include "hal/timer_hal.h"
#include "hal/timer_ll.h"