driver: fix public header exceptions for driver

This commit is contained in:
morris 2022-07-20 18:18:47 +08:00
parent 9a921ada7f
commit c4e84751a5
20 changed files with 106 additions and 204 deletions

View File

@ -6,7 +6,9 @@
#pragma once
#include <stddef.h>
#include <stdbool.h>
#include <stdint.h>
#include <assert.h>
#ifdef __cplusplus
extern "C" {
@ -22,11 +24,11 @@ extern "C" {
* @return true iff [start1; end1) overlaps [start2; end2)
*/
static inline bool bootloader_util_regions_overlap(
const intptr_t start1, const intptr_t end1,
const intptr_t start2, const intptr_t end2)
const intptr_t start1, const intptr_t end1,
const intptr_t start2, const intptr_t end2)
{
assert(end1>start1);
assert(end2>start2);
assert(end1 > start1);
assert(end2 > start2);
return (end1 > start2 && end2 > start1);
}

View File

@ -43,10 +43,11 @@ extern "C" {
#define CAN_STATE_BUS_OFF TWAI_STATE_BUS_OFF
#define CAN_STATE_RECOVERING TWAI_STATE_RECOVERING
#if SOC_TWAI_SUPPORTED
typedef twai_state_t can_state_t;
typedef twai_general_config_t can_general_config_t;
typedef twai_status_info_t can_status_info_t;
#endif // SOC_TWAI_SUPPORTED
#define can_driver_install(g_config, t_config, f_config) twai_driver_install(g_config, t_config, f_config)
#define can_driver_uninstall() twai_driver_uninstall()

View File

@ -74,8 +74,6 @@ typedef enum {
MCPWM_UNIT_MAX, /*!<Max number of MCPWM units*/
} mcpwm_unit_t;
_Static_assert(MCPWM_UNIT_MAX == SOC_MCPWM_GROUPS, "MCPWM unit number not equal to chip capabilities");
/**
* @brief Select MCPWM timer
*/

View File

@ -21,12 +21,15 @@
* OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
*/
#ifndef _SDMMC_DEFS_H_
#define _SDMMC_DEFS_H_
#pragma once
#include <stdint.h>
#include <limits.h>
#ifdef __cplusplus
extern "C" {
#endif
/* MMC commands */ /* response type */
#define MMC_GO_IDLE_STATE 0 /* R0 */
#define MMC_SEND_OP_COND 1 /* R3 */
@ -531,4 +534,6 @@ static inline uint32_t MMC_RSP_BITS(uint32_t *src, int start, int len)
#define SDMMC_TIMING_HIGHSPEED 1
#define SDMMC_TIMING_MMC_DDR52 2
#endif //_SDMMC_DEFS_H_
#ifdef __cplusplus
}
#endif

View File

@ -21,14 +21,17 @@
* OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
*/
#ifndef _SDMMC_TYPES_H_
#define _SDMMC_TYPES_H_
#pragma once
#include <stdint.h>
#include <stddef.h>
#include "esp_err.h"
#include "freertos/FreeRTOS.h"
#ifdef __cplusplus
extern "C" {
#endif
/**
* Decoded values from SD card Card Specific Data register
*/
@ -232,4 +235,6 @@ typedef enum {
SDMMC_DISCARD_ARG = 1, /*!< Discard operation for SD/MMC */
} sdmmc_erase_arg_t;
#endif // _SDMMC_TYPES_H_
#ifdef __cplusplus
}
#endif

View File

@ -25,6 +25,8 @@
static const char *TAG = "mcpwm";
_Static_assert(MCPWM_UNIT_MAX == SOC_MCPWM_GROUPS, "MCPWM unit number not equal to chip capabilities");
#define MCPWM_DRIVER_INIT_ERROR "MCPWM DRIVER NOT INITIALIZED"
#define MCPWM_GROUP_NUM_ERROR "MCPWM GROUP NUM ERROR"
#define MCPWM_PRESCALE_ERROR "MCPWM PRESCALE ERROR"

View File

@ -3,8 +3,10 @@
*
* SPDX-License-Identifier: Apache-2.0
*/
#ifndef __ESP_COMPILER_H
#define __ESP_COMPILER_H
#pragma once
#include "sdkconfig.h"
/*
* The likely and unlikely macro pairs:
@ -50,5 +52,3 @@
#define ESP_COMPILER_DESIGNATED_INIT_AGGREGATE_TYPE_STR(member, value) .member = value,
#define ESP_COMPILER_DESIGNATED_INIT_AGGREGATE_TYPE_EMPTY(member)
#endif
#endif

View File

@ -1,16 +1,8 @@
// Copyright 2015-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: 2015-2022 Espressif Systems (Shanghai) CO LTD
*
* SPDX-License-Identifier: Apache-2.0
*/
#pragma once

View File

@ -40,7 +40,7 @@ typedef struct {
Note: Unreasonable settings can cause waveform to be oversaturated. Range: -128 ~ 127. */
} dac_cw_config_t;
#if CONFIG_IDF_TARGET_ESP32S2 || CONFIG_IDF_TARGET_ESP32S3
#if CONFIG_IDF_TARGET_ESP32S2
/**
* @brief DAC digital controller (DMA mode) work mode.

View File

@ -7,6 +7,7 @@
#pragma once
#include "soc/clk_tree_defs.h"
#include "soc/soc_caps.h"
#ifdef __cplusplus
extern "C" {
@ -15,12 +16,20 @@ extern "C" {
/**
* @brief MCPWM timer clock source
*/
#if SOC_MCPWM_SUPPORTED
typedef soc_periph_mcpwm_timer_clk_src_t mcpwm_timer_clock_source_t;
#else
typedef int mcpwm_timer_clock_source_t;
#endif // SOC_MCPWM_SUPPORTED
/**
* @brief MCPWM capture clock source
*/
#if SOC_MCPWM_SUPPORTED
typedef soc_periph_mcpwm_capture_clk_src_t mcpwm_capture_clock_source_t;
#else
typedef int mcpwm_capture_clock_source_t;
#endif // SOC_MCPWM_SUPPORTED
/**
* @brief MCPWM timer count direction

View File

@ -1,18 +1,12 @@
// Copyright 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: 2018-2022 Espressif Systems (Shanghai) CO LTD
*
* SPDX-License-Identifier: Apache-2.0
*/
#pragma once
#include "sdkconfig.h"
#ifdef CONFIG_HEAP_TASK_TRACKING
#ifdef __cplusplus

View File

@ -3,9 +3,9 @@
*
* SPDX-License-Identifier: Apache-2.0
*/
#ifndef _SOC_UART_STRUCT_H_
#define _SOC_UART_STRUCT_H_
#pragma once
#include <stdint.h>
#ifdef __cplusplus
extern "C" {
@ -396,7 +396,3 @@ extern uart_dev_t UART1;
#ifdef __cplusplus
}
#endif
#endif /*_SOC_UART_STRUCT_H_ */

View File

@ -1,18 +1,13 @@
// 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.
#ifndef _SOC_APB_SARADC_STRUCT_H_
#define _SOC_APB_SARADC_STRUCT_H_
/*
* SPDX-FileCopyrightText: 2020-2022 Espressif Systems (Shanghai) CO LTD
*
* SPDX-License-Identifier: Apache-2.0
*/
#pragma once
#include <stdint.h>
#ifdef __cplusplus
extern "C" {
#endif
@ -486,5 +481,3 @@ extern apb_saradc_dev_t APB_SARADC;
#ifdef __cplusplus
}
#endif
#endif /* _SOC_APB_SARADC_STRUCT_H_ */

View File

@ -1,18 +1,13 @@
// Copyright 2017-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.
#ifndef _SOC_APB_SARADC_STRUCT_H_
#define _SOC_APB_SARADC_STRUCT_H_
/*
* SPDX-FileCopyrightText: 2017-2022 Espressif Systems (Shanghai) CO LTD
*
* SPDX-License-Identifier: Apache-2.0
*/
#pragma once
#include <stdint.h>
#ifdef __cplusplus
extern "C" {
#endif
@ -428,5 +423,3 @@ extern apb_saradc_dev_t APB_SARADC;
#ifdef __cplusplus
}
#endif
#endif /* _SOC_APB_SARADC_STRUCT_H_ */

View File

@ -1,18 +1,13 @@
// 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
/*
* SPDX-FileCopyrightText: 2015-2022 Espressif Systems (Shanghai) CO LTD
*
* SPDX-License-Identifier: Apache-2.0
*/
#pragma once
#include <stdint.h>
// 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.
#ifndef _SOC_I2C_STRUCT_H_
#define _SOC_I2C_STRUCT_H_
#ifdef __cplusplus
extern "C" {
#endif
@ -379,5 +374,3 @@ extern i2c_dev_t I2C1;
#ifdef __cplusplus
}
#endif
#endif /* _SOC_I2C_STRUCT_H_ */

View File

@ -1,18 +1,13 @@
// Copyright 2017-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.
#ifndef _SOC_SPI_MEM_STRUCT_H_
#define _SOC_SPI_MEM_STRUCT_H_
/*
* SPDX-FileCopyrightText: 2017-2022 Espressif Systems (Shanghai) CO LTD
*
* SPDX-License-Identifier: Apache-2.0
*/
#pragma once
#include <stdint.h>
#ifdef __cplusplus
extern "C" {
#endif
@ -705,5 +700,3 @@ extern spi_mem_dev_t SPIMEM1;
#ifdef __cplusplus
}
#endif
#endif /* _SOC_SPI_MEM_STRUCT_H_ */

View File

@ -1,18 +1,13 @@
// Copyright 2017-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.
#ifndef _SOC_SPI_STRUCT_H_
#define _SOC_SPI_STRUCT_H_
/*
* SPDX-FileCopyrightText: 2017-2022 Espressif Systems (Shanghai) CO LTD
*
* SPDX-License-Identifier: Apache-2.0
*/
#pragma once
#include <stdint.h>
#ifdef __cplusplus
extern "C" {
#endif
@ -761,5 +756,3 @@ _Static_assert(sizeof(spi_dev_t)==0x400, "***invalid spi");
#ifdef __cplusplus
}
#endif
#endif /* _SOC_SPI_STRUCT_H_ */

View File

@ -1,37 +0,0 @@
// 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.
#pragma once
#include <stdint.h>
#include <stdbool.h>
#include "soc/usb_pins.h"
#include "soc/gpio_sig_map.h"
#include "soc/usb_reg.h"
#include "soc/usb_types.h"
#include "soc/usb_struct.h"
#include "soc/usb_wrap_reg.h"
#include "soc/usb_wrap_struct.h"
/**
* @brief A pin descriptor for init
*/
typedef struct {
const int pin;
const int func;
const bool is_output;
const int ext_phy_only;
} usb_iopin_dsc_t;
extern const usb_iopin_dsc_t usb_periph_iopins[];

View File

@ -828,7 +828,6 @@ components/heap/heap_tlsf.h
components/heap/heap_tlsf_block_functions.h
components/heap/heap_tlsf_config.h
components/heap/heap_trace_standalone.c
components/heap/include/esp_heap_task_info.h
components/heap/include/esp_heap_trace.h
components/heap/include/heap_memory_layout.h
components/heap/multi_heap_config.h
@ -1061,7 +1060,6 @@ components/soc/esp32c3/i2c_periph.c
components/soc/esp32c3/include/soc/apb_ctrl_reg.h
components/soc/esp32c3/include/soc/apb_ctrl_struct.h
components/soc/esp32c3/include/soc/apb_saradc_reg.h
components/soc/esp32c3/include/soc/apb_saradc_struct.h
components/soc/esp32c3/include/soc/assist_debug_reg.h
components/soc/esp32c3/include/soc/bb_reg.h
components/soc/esp32c3/include/soc/boot_mode.h
@ -1153,7 +1151,6 @@ components/soc/esp32s2/i2c_periph.c
components/soc/esp32s2/include/soc/apb_ctrl_reg.h
components/soc/esp32s2/include/soc/apb_ctrl_struct.h
components/soc/esp32s2/include/soc/apb_saradc_reg.h
components/soc/esp32s2/include/soc/apb_saradc_struct.h
components/soc/esp32s2/include/soc/assist_debug_reg.h
components/soc/esp32s2/include/soc/bb_reg.h
components/soc/esp32s2/include/soc/boot_mode.h
@ -1170,7 +1167,6 @@ components/soc/esp32s2/include/soc/gpio_sig_map.h
components/soc/esp32s2/include/soc/gpio_struct.h
components/soc/esp32s2/include/soc/hwcrypto_reg.h
components/soc/esp32s2/include/soc/i2c_reg.h
components/soc/esp32s2/include/soc/i2c_struct.h
components/soc/esp32s2/include/soc/interrupt_reg.h
components/soc/esp32s2/include/soc/ledc_reg.h
components/soc/esp32s2/include/soc/ledc_struct.h
@ -1191,10 +1187,8 @@ components/soc/esp32s2/include/soc/sensitive_reg.h
components/soc/esp32s2/include/soc/soc_pins.h
components/soc/esp32s2/include/soc/soc_ulp.h
components/soc/esp32s2/include/soc/spi_mem_reg.h
components/soc/esp32s2/include/soc/spi_mem_struct.h
components/soc/esp32s2/include/soc/spi_pins.h
components/soc/esp32s2/include/soc/spi_reg.h
components/soc/esp32s2/include/soc/spi_struct.h
components/soc/esp32s2/include/soc/syscon_reg.h
components/soc/esp32s2/include/soc/syscon_struct.h
components/soc/esp32s2/include/soc/systimer_reg.h

View File

@ -27,9 +27,6 @@ components/esp_common/include/esp_private/
components/esp32/include/esp32/brownout.h
components/esp32/include/esp32/cache_err_int.h
components/driver/include/driver/sdmmc_defs.h
components/driver/include/driver/sdmmc_types.h
# LWIP: sockets.h uses #include_next<>, which doesn't work correctly with the checker
# memp_std.h is supposed to be included multiple times with different settings
components/lwip/lwip/src/include/lwip/priv/memp_std.h
@ -103,14 +100,9 @@ components/esp_hw_support/include/esp_private/esp_memprot_internal.h
### Here are the files that use CONFIG_XXX values but don't include sdkconfig.h
#
components/heap/include/esp_heap_task_info.h
components/esp_wifi/include/esp_private/wifi_os_adapter.h
components/asio/port/include/esp_exception.h
components/esp_common/include/esp_compiler.h
### To be fixed: headers that rely on implicit inclusion
#
components/soc/src/esp32/rtc_clk_common.h
components/esp_rom/include/esp32/rom/sha.h
components/esp_rom/include/esp32/rom/secure_boot.h
components/esp_rom/include/esp32c3/rom/spi_flash.h
@ -127,7 +119,6 @@ components/esp_rom/include/esp32c2/rom/rtc.h
components/esp32/include/esp32/dport_access.h
components/esp32/include/rom/sha.h
components/esp32/include/rom/secure_boot.h
components/driver/esp32/include/touch_sensor.h
components/esp_ringbuf/include/freertos/ringbuf.h
components/efuse/esp32/include/esp_efuse_table.h
components/esp_wifi/include/esp_wifi_crypto_types.h
@ -141,7 +132,6 @@ components/esp_netif/include/esp_netif_sta_list.h
components/esp_netif/include/esp_netif_defaults.h
components/esp_netif/include/esp_netif_net_stack.h
components/esp_netif/include/esp_netif_ppp.h
components/bootloader_support/include/bootloader_util.h
components/console/linenoise/linenoise.h
components/protocomm/include/transports/protocomm_httpd.h
components/fatfs/src/diskio.h
@ -151,45 +141,34 @@ components/ulp/include/ulp_common.h
components/ulp/include/esp32s2/ulp_riscv.h
components/mbedtls/esp_crt_bundle/include/esp_crt_bundle.h
components/wifi_provisioning/include/wifi_provisioning/scheme_softap.h
components/usb/include/esp_private/usb_phy.h
components/usb/include/usb/usb_types_stack.h
### To be fixed: files which don't compile for esp32s2 target:
components/driver/deprecated/driver/adc_deprecated.h
components/driver/include/driver/can.h
components/driver/include/driver/mcpwm.h
components/efuse/esp32s2/include/esp_efuse_table.h
components/esp_psram/include/esp32/himem.h
components/esp_rom/include/esp32/rom/ets_sys.h
components/esp_rom/include/esp32/rom/rtc.h
components/esp_rom/include/esp32/rom/uart.h
components/soc/esp32s2/include/soc/apb_ctrl_struct.h
components/soc/esp32s2/include/soc/apb_saradc_struct.h
components/soc/esp32s2/include/soc/efuse_struct.h
components/soc/esp32s2/include/soc/gpio_sd_struct.h
components/soc/esp32s2/include/soc/gpio_struct.h
components/soc/esp32s2/include/soc/i2c_struct.h
components/soc/esp32s2/include/soc/ledc_struct.h
components/soc/esp32s2/include/soc/rtc_i2c_struct.h
components/soc/esp32s2/include/soc/rtc_io_struct.h
components/soc/esp32s2/include/soc/sens_struct.h
components/soc/esp32s2/include/soc/spi_mem_struct.h
components/soc/esp32s2/include/soc/spi_struct.h
components/soc/esp32s2/include/soc/syscon_struct.h
components/soc/esp32s2/include/soc/uart_struct.h
components/soc/esp32s2/include/soc/uhci_struct.h
components/usb/include/esp_private/usb_phy.h
components/usb/include/usb/usb_types_stack.h
### To be fixed: files which don't compile for esp32s3 target:
components/driver/include/driver/dac_common.h
components/efuse/esp32s3/include/esp_efuse_table.h
components/soc/esp32s3/include/soc/world_controller_struct.h
components/soc/esp32s3/usb_periph.h
### To be fixed: files which don't compile for esp32c3 target:
components/driver/include/driver/touch_pad.h
components/efuse/esp32c3/include/esp_efuse_table.h
components/esp_system/port/include/private/esp_private/trax.h
components/espcoredump/include/port/xtensa/esp_core_dump_summary_port.h
@ -197,9 +176,7 @@ components/riscv/include/esp_private/panic_reason.h
components/riscv/include/riscv/interrupt.h
components/riscv/include/riscv/rvruntime-frames.h
components/soc/esp32c3/include/soc/apb_ctrl_struct.h
components/soc/esp32c3/include/soc/apb_saradc_struct.h
components/soc/esp32c3/include/soc/efuse_struct.h
components/soc/esp32c3/include/soc/gpio_sd_struct.h
components/soc/esp32c3/include/soc/ledc_struct.h
components/soc/esp32c3/include/soc/rtc_cntl_struct.h
components/soc/esp32c3/include/soc/rtc_i2c_struct.h
@ -215,4 +192,3 @@ components/efuse/esp32c2/include/esp_efuse_table.h
components/soc/esp32c2/include/soc/rtc_cntl_struct.h
components/soc/esp32c2/include/soc/spi_mem_struct.h
components/soc/esp32c2/include/soc/syscon_struct.h
components/soc/esp32c2/include/soc/uart_struct.h