Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
10 changes: 5 additions & 5 deletions bsp/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -348,11 +348,11 @@ This document is based on the RT-Thread mainline repository and categorizes the

#### 🟡 Rockchip

| BSP Name | GPIO | UART | ADC | I2C | SPI | WDT | HWTimer | PWM | RTC | SDIO | CAN | PCI |
|----------|------|------|-----|-----|-----|-----|---------|-----|-----|------|-----|------|
| [rk2108](rockchip/rk2108) | - | ✅ | - | - | - | - | - | - | - | - | - | - |
| [rk3300](rockchip/rk3300) | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | - |
| [rk3500](rockchip/rk3500) | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| BSP Name | GPIO | UART | ADC | I2C | SPI | WDT | HWTimer | PWM | RTC | SDIO | CAN | PCI | DMA | Ethernet | Audio | Display | Crypto |
|----------|------|------|-----|-----|-----|-----|---------|-----|-----|------|-----|-----|-----|----------|-------|---------|--------|
| [rk2108](rockchip/rk2108) | - | ✅ | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - |
| [rk3300](rockchip/rk3300) | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| [rk3500](rockchip/rk3500) | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |

#### 🟡 APM32

Expand Down
5 changes: 5 additions & 0 deletions bsp/rockchip/dm/Kconfig
Original file line number Diff line number Diff line change
@@ -1,9 +1,12 @@
SOC_DM_ADC_DIR = $(SOC_DM_DIR)/adc
SOC_DM_AUDIO_DIR = $(SOC_DM_DIR)/audio
SOC_DM_CAN_DIR = $(SOC_DM_DIR)/can
SOC_DM_CLK_DIR = $(SOC_DM_DIR)/clk
SOC_DM_DVFS_EVENT_DIR = $(SOC_DM_DIR)/dvfs/event
SOC_DM_DVFS_CPUFREQ_DIR = $(SOC_DM_DIR)/dvfs/cpufreq
SOC_DM_DVFS_DEVFREQ_DIR = $(SOC_DM_DIR)/dvfs/devfreq
SOC_DM_GRAPHIC_FB_DIR = $(SOC_DM_DIR)/graphic/framebuffer
SOC_DM_GRAPHIC_LOGO_DIR = $(SOC_DM_DIR)/graphic/logo
SOC_DM_HWCRYPTO_DIR = $(SOC_DM_DIR)/hwcrypto
SOC_DM_HWSPINLOCK_DIR = $(SOC_DM_DIR)/hwspinlock
SOC_DM_CLOCK_TIME_DIR = $(SOC_DM_DIR)/hwtimer
Expand All @@ -21,7 +24,9 @@ SOC_DM_PWM_DIR = $(SOC_DM_DIR)/pwm
SOC_DM_REGULATOR_DIR = $(SOC_DM_DIR)/regulator
SOC_DM_RTC_DIR = $(SOC_DM_DIR)/rtc
SOC_DM_SDIO_DIR = $(SOC_DM_DIR)/sdio
SOC_DM_ETHERNET_DIR = $(SOC_DM_DIR)/ethernet
SOC_DM_SOC_DIR = $(SOC_DM_DIR)/soc
SOC_DM_SPI_DIR = $(SOC_DM_DIR)/spi
SOC_DM_THERMAL_DIR = $(SOC_DM_DIR)/thermal
SOC_DM_UFS_DIR = $(SOC_DM_DIR)/ufs
SOC_DM_WDT_DIR = $(SOC_DM_DIR)/watchdog
48 changes: 48 additions & 0 deletions bsp/rockchip/dm/audio/Kconfig
Original file line number Diff line number Diff line change
@@ -0,0 +1,48 @@
menuconfig RT_AUDIO_ROCKCHIP
bool "Enable Rockchip Audio"
depends on RT_USING_OFW
depends on RT_USING_AUDIO
default n
help
Rockchip I2S/TDM audio for boards such as ROCK 3A (rk3568):
- Analog output via RK809/RK817 PMIC codec (I2S1)
- HDMI audio via I2S0 (requires dw-hdmi display stack)

if RT_AUDIO_ROCKCHIP

config RT_AUDIO_ROCKCHIP_I2S_TDM
bool "Rockchip I2S/TDM controller (CPU DAI)"
default y
help
I2S/TDM block driver (e.g. i2s0_8ch, i2s1_8ch).
Uses PL330 DMA when RT_USING_DMA is enabled, otherwise PIO.

menuconfig RT_AUDIO_ROCKCHIP_CODEC
bool "Rockchip codec support"
depends on RT_AUDIO_ROCKCHIP_I2S_TDM
default y
help
Codec drivers for analog audio (headphone / line-out).
Not used for the HDMI audio card.

if RT_AUDIO_ROCKCHIP_CODEC

config RT_AUDIO_ROCKCHIP_CODEC_RK817
bool "RK817/RK809 codec (I2C PMIC)"
depends on RT_USING_I2C
select RT_MFD_RK8XX_I2C
default y
help
RK809/RK817 built-in codec on ROCK 3A, routed over I2S1.

endif

config RT_AUDIO_ROCKCHIP_CARD
bool "Rockchip simple-audio-card (machine driver)"
depends on RT_AUDIO_ROCKCHIP_I2S_TDM
default y
help
Parses simple-audio-card nodes (e.g. rk809-sound, hdmi_sound)
and registers rt_audio_device instances.

endif
18 changes: 18 additions & 0 deletions bsp/rockchip/dm/audio/SConscript
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
from building import *

cwd = GetCurrentDir()
src = []
CPPPATH = [cwd + '/../include']

if GetDepend(['RT_AUDIO_ROCKCHIP_I2S_TDM']):
src += ['rockchip-i2s-tdm.c']

if GetDepend(['RT_AUDIO_ROCKCHIP_CODEC_RK817']):
src += ['codec/rk817-codec.c']

if GetDepend(['RT_AUDIO_ROCKCHIP_CARD', 'RT_AUDIO_ROCKCHIP_I2S_TDM']):
src += ['rockchip-audio-card.c']

group = DefineGroup('DeviceDrivers', src, depend = [''], CPPPATH = CPPPATH)

Return('group')
Loading
Loading