mirror of
https://github.com/espressif/esp-idf.git
synced 2025-08-07 20:00:53 +00:00
twai: describe peripheral info
Describe peripheral informations in the twai_peirph.c, including: Interrupt number, GPIO matrix signal ID, etc
This commit is contained in:
@@ -17,6 +17,7 @@ set(srcs
|
||||
"sdmmc_periph.c"
|
||||
"spi_periph.c"
|
||||
"timer_periph.c"
|
||||
"twai_periph.c"
|
||||
"touch_sensor_periph.c"
|
||||
"uart_periph.c")
|
||||
|
||||
|
23
components/soc/esp32/twai_periph.c
Normal file
23
components/soc/esp32/twai_periph.c
Normal file
@@ -0,0 +1,23 @@
|
||||
/*
|
||||
* SPDX-FileCopyrightText: 2022 Espressif Systems (Shanghai) CO LTD
|
||||
*
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
*/
|
||||
|
||||
#include "soc/soc.h"
|
||||
#include "soc/twai_periph.h"
|
||||
#include "soc/gpio_sig_map.h"
|
||||
|
||||
const twai_controller_signal_conn_t twai_controller_periph_signals = {
|
||||
.controllers = {
|
||||
[0] = {
|
||||
.module = PERIPH_TWAI_MODULE,
|
||||
.irq_id = ETS_TWAI_INTR_SOURCE,
|
||||
.tx_sig = TWAI_TX_IDX,
|
||||
.rx_sig = TWAI_RX_IDX,
|
||||
.bus_off_sig = TWAI_BUS_OFF_ON_IDX,
|
||||
.clk_out_sig = TWAI_CLKOUT_IDX,
|
||||
.stand_by_sig = -1,
|
||||
},
|
||||
}
|
||||
};
|
@@ -12,7 +12,8 @@ set(srcs
|
||||
"i2c_periph.c"
|
||||
"uart_periph.c"
|
||||
"temperature_sensor_periph.c"
|
||||
"timer_periph.c")
|
||||
"timer_periph.c"
|
||||
"twai_periph.c")
|
||||
|
||||
add_prefix(srcs "${CMAKE_CURRENT_LIST_DIR}/" "${srcs}")
|
||||
|
||||
|
22
components/soc/esp32c3/twai_periph.c
Normal file
22
components/soc/esp32c3/twai_periph.c
Normal file
@@ -0,0 +1,22 @@
|
||||
/*
|
||||
* SPDX-FileCopyrightText: 2022 Espressif Systems (Shanghai) CO LTD
|
||||
*
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
*/
|
||||
|
||||
#include "soc/twai_periph.h"
|
||||
#include "soc/gpio_sig_map.h"
|
||||
|
||||
const twai_controller_signal_conn_t twai_controller_periph_signals = {
|
||||
.controllers = {
|
||||
[0] = {
|
||||
.module = PERIPH_TWAI_MODULE,
|
||||
.irq_id = ETS_TWAI_INTR_SOURCE,
|
||||
.tx_sig = TWAI_TX_IDX,
|
||||
.rx_sig = TWAI_RX_IDX,
|
||||
.bus_off_sig = TWAI_BUS_OFF_ON_IDX,
|
||||
.clk_out_sig = TWAI_CLKOUT_IDX,
|
||||
.stand_by_sig = -1,
|
||||
},
|
||||
}
|
||||
};
|
@@ -14,7 +14,8 @@ set(srcs
|
||||
"i2c_periph.c"
|
||||
"uart_periph.c"
|
||||
"temperature_sensor_periph.c"
|
||||
"timer_periph.c")
|
||||
"timer_periph.c"
|
||||
"twai_periph.c")
|
||||
|
||||
# ESP32C6-TODO
|
||||
list(REMOVE_ITEM srcs
|
||||
|
31
components/soc/esp32c6/twai_periph.c
Normal file
31
components/soc/esp32c6/twai_periph.c
Normal file
@@ -0,0 +1,31 @@
|
||||
/*
|
||||
* SPDX-FileCopyrightText: 2022 Espressif Systems (Shanghai) CO LTD
|
||||
*
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
*/
|
||||
|
||||
#include "soc/twai_periph.h"
|
||||
#include "soc/gpio_sig_map.h"
|
||||
|
||||
const twai_controller_signal_conn_t twai_controller_periph_signals = {
|
||||
.controllers = {
|
||||
[0] = {
|
||||
.module = PERIPH_TWAI0_MODULE,
|
||||
.irq_id = ETS_TWAI0_INTR_SOURCE,
|
||||
.tx_sig = TWAI0_TX_IDX,
|
||||
.rx_sig = TWAI0_RX_IDX,
|
||||
.bus_off_sig = TWAI0_BUS_OFF_ON_IDX,
|
||||
.clk_out_sig = TWAI0_CLKOUT_IDX,
|
||||
.stand_by_sig = TWAI0_STANDBY_IDX,
|
||||
},
|
||||
[1] = {
|
||||
.module = PERIPH_TWAI1_MODULE,
|
||||
.irq_id = ETS_TWAI1_INTR_SOURCE,
|
||||
.tx_sig = TWAI1_TX_IDX,
|
||||
.rx_sig = TWAI1_RX_IDX,
|
||||
.bus_off_sig = TWAI1_BUS_OFF_ON_IDX,
|
||||
.clk_out_sig = TWAI1_CLKOUT_IDX,
|
||||
.stand_by_sig = TWAI1_STANDBY_IDX,
|
||||
}
|
||||
}
|
||||
};
|
@@ -15,6 +15,7 @@ set(srcs
|
||||
"spi_periph.c"
|
||||
"timer_periph.c"
|
||||
"touch_sensor_periph.c"
|
||||
"twai_periph.c"
|
||||
"uart_periph.c"
|
||||
"usb_periph.c"
|
||||
"temperature_sensor_periph.c"
|
||||
|
22
components/soc/esp32s2/twai_periph.c
Normal file
22
components/soc/esp32s2/twai_periph.c
Normal file
@@ -0,0 +1,22 @@
|
||||
/*
|
||||
* SPDX-FileCopyrightText: 2022 Espressif Systems (Shanghai) CO LTD
|
||||
*
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
*/
|
||||
|
||||
#include "soc/twai_periph.h"
|
||||
#include "soc/gpio_sig_map.h"
|
||||
|
||||
const twai_controller_signal_conn_t twai_controller_periph_signals = {
|
||||
.controllers = {
|
||||
[0] = {
|
||||
.module = PERIPH_TWAI_MODULE,
|
||||
.irq_id = ETS_TWAI_INTR_SOURCE,
|
||||
.tx_sig = TWAI_TX_IDX,
|
||||
.rx_sig = TWAI_RX_IDX,
|
||||
.bus_off_sig = TWAI_BUS_OFF_ON_IDX,
|
||||
.clk_out_sig = TWAI_CLKOUT_IDX,
|
||||
.stand_by_sig = -1,
|
||||
},
|
||||
}
|
||||
};
|
@@ -16,9 +16,10 @@ set(srcs
|
||||
"sdio_slave_periph.c"
|
||||
"sdmmc_periph.c"
|
||||
"spi_periph.c"
|
||||
"temperature_sensor_periph.c"
|
||||
"timer_periph.c"
|
||||
"touch_sensor_periph.c"
|
||||
"temperature_sensor_periph.c"
|
||||
"twai_periph.c"
|
||||
"uart_periph.c"
|
||||
"usb_periph.c"
|
||||
"usb_otg_periph.c")
|
||||
|
22
components/soc/esp32s3/twai_periph.c
Normal file
22
components/soc/esp32s3/twai_periph.c
Normal file
@@ -0,0 +1,22 @@
|
||||
/*
|
||||
* SPDX-FileCopyrightText: 2022 Espressif Systems (Shanghai) CO LTD
|
||||
*
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
*/
|
||||
|
||||
#include "soc/twai_periph.h"
|
||||
#include "soc/gpio_sig_map.h"
|
||||
|
||||
const twai_controller_signal_conn_t twai_controller_periph_signals = {
|
||||
.controllers = {
|
||||
[0] = {
|
||||
.module = PERIPH_TWAI_MODULE,
|
||||
.irq_id = ETS_TWAI_INTR_SOURCE,
|
||||
.tx_sig = TWAI_TX_IDX,
|
||||
.rx_sig = TWAI_RX_IDX,
|
||||
.bus_off_sig = TWAI_BUS_OFF_ON_IDX,
|
||||
.clk_out_sig = TWAI_CLKOUT_IDX,
|
||||
.stand_by_sig = -1,
|
||||
},
|
||||
}
|
||||
};
|
@@ -1,27 +1,32 @@
|
||||
// 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-2022 Espressif Systems (Shanghai) CO LTD
|
||||
*
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
*/
|
||||
|
||||
#pragma once
|
||||
|
||||
#include "sdkconfig.h"
|
||||
#include <stdint.h>
|
||||
#include "soc/soc_caps.h"
|
||||
#include "soc/periph_defs.h"
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
#include "soc/soc_caps.h"
|
||||
#include "soc/twai_struct.h"
|
||||
typedef struct {
|
||||
struct {
|
||||
const periph_module_t module; // peripheral module
|
||||
const int irq_id; // interrupt source ID
|
||||
const int tx_sig; // TX signal ID in GPIO matrix
|
||||
const int rx_sig; // RX signal ID in GPIO matrix
|
||||
const int clk_out_sig; // CLK_OUT signal ID in GPIO matrix
|
||||
const int bus_off_sig; // BUS_OFF status signal ID in GPIO matrix
|
||||
const int stand_by_sig; // STAND_BY signal ID in GPIO matrix
|
||||
} controllers[SOC_TWAI_CONTROLLER_NUM];
|
||||
} twai_controller_signal_conn_t;
|
||||
|
||||
extern const twai_controller_signal_conn_t twai_controller_periph_signals;
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
|
@@ -1177,7 +1177,6 @@ components/soc/include/soc/ledc_periph.h
|
||||
components/soc/include/soc/sdio_slave_periph.h
|
||||
components/soc/include/soc/sdmmc_periph.h
|
||||
components/soc/include/soc/sens_periph.h
|
||||
components/soc/include/soc/twai_periph.h
|
||||
components/soc/include/soc/uart_periph.h
|
||||
components/soc/include/soc/uhci_periph.h
|
||||
components/soc/lldesc.c
|
||||
|
Reference in New Issue
Block a user