未验证 提交 c67cbdb3 编写于 作者: L liYang~ 提交者: GitHub

[drv_gpio]为ch32完善gpio驱动 (#6334)

* 修改Kconfig的不足

* update gpio driver

* formatting code
上级 4fa40bce
config SOC_RISCV_FAMILY_CH32
bool
config SOC_RISCV_SERIES_CH32V103
config SOC_RISCV_SERIES_CH32V1
bool
select ARCH_RISCV
select SOC_RISCV_FAMILY_CH32
config SOC_RISCV_SERIES_CH32V307
config SOC_RISCV_SERIES_CH32V3
bool
select ARCH_RISCV
select SOC_RISCV_FAMILY_CH32
......
......@@ -4,13 +4,35 @@
* SPDX-License-Identifier: Apache-2.0
*
* Change Logs:
* Date Author Notes
* 2021-08-10 charlown first version
* Date Author Notes
* 2022-08-25 liYony first version
*/
#ifndef DRV_GPIO_H__
#define DRV_GPIO_H__
#ifndef __DRV_GPIO_H__
#define __DRV_GPIO_H__
#include <board.h>
#include <rtthread.h>
#include "rtdevice.h"
#include <rthw.h>
#ifdef __cplusplus
extern "C" {
#endif
#define __CH32_PORT(port) GPIO##port##_BASE
#define GET_PIN(PORTx,PIN) (rt_base_t)((16 * ( ((rt_base_t)__CH32_PORT(PORTx) - (rt_base_t)GPIOA_BASE)/(0x0400UL) )) + PIN)
struct pin_irq_map
{
rt_uint16_t pinbit;
IRQn_Type irqno;
};
int rt_hw_pin_init(void);
#ifdef __cplusplus
}
#endif
#endif /* __DRV_GPIO_H__ */
......@@ -491,7 +491,7 @@ CONFIG_RT_LIBC_DEFAULT_TIMEZONE=8
# CONFIG_PKG_USING_ADT74XX is not set
# CONFIG_PKG_USING_AS7341 is not set
# CONFIG_PKG_USING_STM32_SDIO is not set
# CONFIG_PKG_USING_ESP_IDF is not set
# CONFIG_PKG_USING_RTT_ESP_IDF is not set
# CONFIG_PKG_USING_ICM20608 is not set
# CONFIG_PKG_USING_BUTTON is not set
# CONFIG_PKG_USING_PCF8574 is not set
......@@ -505,7 +505,7 @@ CONFIG_RT_LIBC_DEFAULT_TIMEZONE=8
# CONFIG_PKG_USING_WM_LIBRARIES is not set
#
# Kendryte SDK
# kendryte-sdk: Kendryte SDK
#
# CONFIG_PKG_USING_K210_SDK is not set
# CONFIG_PKG_USING_KENDRYTE_SDK is not set
......@@ -570,7 +570,6 @@ CONFIG_RT_LIBC_DEFAULT_TIMEZONE=8
# CONFIG_PKG_USING_CW2015 is not set
# CONFIG_PKG_USING_RFM300 is not set
# CONFIG_PKG_USING_IO_INPUT_FILTER is not set
# CONFIG_PKG_USING_RASPBERRYPI_PICO_SDK is not set
#
# AI packages
......@@ -646,66 +645,8 @@ CONFIG_RT_LIBC_DEFAULT_TIMEZONE=8
# CONFIG_PKG_USING_MFBD is not set
# CONFIG_PKG_USING_SLCAN2RTT is not set
# CONFIG_PKG_USING_SOEM is not set
# CONFIG_PKG_USING_QPARAM is not set
#
# Privated Packages of RealThread
#
# CONFIG_PKG_USING_CODEC is not set
# CONFIG_PKG_USING_PLAYER is not set
# CONFIG_PKG_USING_MPLAYER is not set
# CONFIG_PKG_USING_PERSIMMON_SRC is not set
# CONFIG_PKG_USING_JS_PERSIMMON is not set
# CONFIG_PKG_USING_JERRYSCRIPT_WIN32 is not set
#
# Network Utilities
#
# CONFIG_PKG_USING_WICED is not set
# CONFIG_PKG_USING_CLOUDSDK is not set
# CONFIG_PKG_USING_POWER_MANAGER is not set
# CONFIG_PKG_USING_RT_OTA is not set
# CONFIG_PKG_USING_RTINSIGHT is not set
# CONFIG_PKG_USING_SMARTCONFIG is not set
# CONFIG_PKG_USING_RTX is not set
# CONFIG_RT_USING_TESTCASE is not set
# CONFIG_PKG_USING_NGHTTP2 is not set
# CONFIG_PKG_USING_AVS is not set
# CONFIG_PKG_USING_ALI_LINKKIT is not set
# CONFIG_PKG_USING_STS is not set
# CONFIG_PKG_USING_DLMS is not set
# CONFIG_PKG_USING_AUDIO_FRAMEWORK is not set
# CONFIG_PKG_USING_ZBAR is not set
# CONFIG_PKG_USING_MCF is not set
# CONFIG_PKG_USING_URPC is not set
# CONFIG_PKG_USING_DCM is not set
# CONFIG_PKG_USING_EMQ is not set
# CONFIG_PKG_USING_CFGM is not set
# CONFIG_PKG_USING_RT_CMSIS_DAP is not set
# CONFIG_PKG_USING_SMODULE is not set
# CONFIG_PKG_USING_SNFD is not set
# CONFIG_PKG_USING_UDBD is not set
# CONFIG_PKG_USING_BENCHMARK is not set
# CONFIG_PKG_USING_UBJSON is not set
# CONFIG_PKG_USING_DATATYPE is not set
# CONFIG_PKG_USING_FASTFS is not set
# CONFIG_PKG_USING_RIL is not set
# CONFIG_PKG_USING_WATCH_DCM_SVC is not set
# CONFIG_PKG_USING_WATCH_APP_FWK is not set
# CONFIG_PKG_USING_GUI_TEST is not set
# CONFIG_PKG_USING_PMEM is not set
# CONFIG_PKG_USING_LWRDP is not set
# CONFIG_PKG_USING_MASAN is not set
# CONFIG_PKG_USING_BSDIFF_LIB is not set
# CONFIG_PKG_USING_PRC_DIFF is not set
#
# RT-Thread Smart
#
# CONFIG_PKG_USING_UKERNEL is not set
# CONFIG_PKG_USING_TRACE_AGENT is not set
CONFIG_SOC_RISCV_FAMILY_CH32=y
CONFIG_SOC_RISCV_SERIES_CH32V103=y
CONFIG_SOC_RISCV_SERIES_CH32V1=y
#
# Hardware Drivers Config
......
......@@ -2,7 +2,7 @@ menu "Hardware Drivers Config"
config SOC_CH32V103R8
bool
select SOC_RISCV_SERIES_CH32V103
select SOC_RISCV_SERIES_CH32V1
select RT_USING_COMPONENTS_INIT
select RT_USING_USER_MAIN
default y
......
......@@ -157,7 +157,7 @@
/* peripheral libraries and drivers */
/* Kendryte SDK */
/* kendryte-sdk: Kendryte SDK */
/* AI packages */
......@@ -172,17 +172,8 @@
/* entertainment: terminal games and other interesting software packages */
/* Privated Packages of RealThread */
/* Network Utilities */
/* RT-Thread Smart */
#define SOC_RISCV_FAMILY_CH32
#define SOC_RISCV_SERIES_CH32V103
#define SOC_RISCV_SERIES_CH32V1
/* Hardware Drivers Config */
......
......@@ -646,7 +646,7 @@ CONFIG_RT_LIBC_DEFAULT_TIMEZONE=8
# CONFIG_PKG_USING_SLCAN2RTT is not set
# CONFIG_PKG_USING_SOEM is not set
CONFIG_SOC_RISCV_FAMILY_CH32=y
CONFIG_SOC_RISCV_SERIES_CH32V307=y
CONFIG_SOC_RISCV_SERIES_CH32V3=y
#
# Hardware Drivers Config
......
......@@ -36,7 +36,7 @@ CH32V307V-R1 是 WCH 推出的一款基于 RISC-V 内核的开发板,最高主
#### 1、指定RISC-V GCC编译器
推荐使用RT_Studio软件里面的编译器。
推荐使用RT-Thread Studio软件里面的编译器。
##### 方法一:直接指定编译器路径。
......
......@@ -2,7 +2,7 @@ menu "Hardware Drivers Config"
config SOC_CH32V307VC
bool
select SOC_RISCV_SERIES_CH32V307
select SOC_RISCV_SERIES_CH32V3
select RT_USING_COMPONENTS_INIT
select RT_USING_USER_MAIN
default y
......
......@@ -173,7 +173,7 @@
/* entertainment: terminal games and other interesting software packages */
#define SOC_RISCV_FAMILY_CH32
#define SOC_RISCV_SERIES_CH32V307
#define SOC_RISCV_SERIES_CH32V3
/* Hardware Drivers Config */
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册