Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
18 commits
Select commit Hold shift + click to select a range
b67aff9
[nrf fromtree] soc: sensry: add pinctrl
tswaehn Dec 10, 2024
037e9a8
[nrf fromtree] dts: sensry: add pinctrl
tswaehn Dec 10, 2024
29ccc34
[nrf fromtree] soc: realrek: ec: Add Realtek RTS5912 SoC
JasonLin-RealTek Nov 22, 2024
a73a878
[nrf fromtree] dts: realtek: Add RTS5912 device tree files
JasonLin-RealTek Nov 22, 2024
d78f536
[nrf fromtree] driver: clock_control: Add clock controller initial ve…
JasonLin-RealTek Nov 22, 2024
f725206
[nrf fromtree] driver: pinctrl: Add pinctrl initial version of RTS5912.
JasonLin-RealTek Nov 22, 2024
d441423
[nrf fromtree] soc: realrek: ec: Add debug_swj initial version of RTS…
JasonLin-RealTek Nov 22, 2024
ae27a55
[nrf fromtree] driver: timer: Add timer driver initial version of RTS…
JasonLin-RealTek Nov 22, 2024
0d8633c
[nrf fromtree] driver: gpio: Add gpio driver initial version of RTS5912.
JasonLin-RealTek Nov 22, 2024
e029b03
[nrf fromtree] driver: serial: Add UART driver initial version of RTS…
JasonLin-RealTek Nov 23, 2024
f82e065
[nrf fromtree] boards: realtek: Add rts5912_evb board
JasonLin-RealTek Nov 23, 2024
ce47997
[nrf fromtree] MAINTAINERS: add maintainer for Realtek EC api and driver
JasonLin-RealTek Nov 28, 2024
5fef9a6
[nrf fromlist] dts: bindings: clock: add nordic,nrfs-audiopll
bjarki-andreasen Mar 21, 2025
c31a03b
[nrf fromlist] dts: common: nordic: nrf54h20: add audiopll node
bjarki-andreasen Mar 21, 2025
2415dde
[nrf fromlist] drivers: clock_control: add nrfs_audiopll clock driver
bjarki-andreasen Mar 21, 2025
37d4091
[nrf fromlist] samples: boards: nordic: add audiopll
bjarki-andreasen Mar 28, 2025
bb4940b
Revert "[nrf fromlist] drivers: i2s: Add support for nRF TDM peripher…
adamkondraciuk Apr 1, 2025
cbcc02b
[nrf fromlist] drivers: i2s: Add support for nRF TDM peripherals
adamkondraciuk Nov 27, 2024
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
13 changes: 13 additions & 0 deletions MAINTAINERS.yml
Original file line number Diff line number Diff line change
Expand Up @@ -3931,6 +3931,19 @@ OpenTitan Platforms:
description: >-
OpenTitan boards, SOCs, dts files and related drivers.

Realtek EC Platforms:
status: maintained
maintainers:
- JasonLin-RealTek
files:
- boards/realtek/
- drivers/*/*rts5912*
- dts/bindings/*/*rts5912*
- dts/arm/realtek/ec/
- soc/realtek/ec/
labels:
- "platform: Realtek EC"

Renesas SmartBond Platforms:
status: maintained
maintainers:
Expand Down
10 changes: 10 additions & 0 deletions boards/realtek/index.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
.. _boards-realtek:

Realtek
#######

.. toctree::
:maxdepth: 1
:glob:

**/*
4 changes: 4 additions & 0 deletions boards/realtek/rts5912_evb/Kconfig.defconfig
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
# SPDX-License-Identifier: Apache-2.0
#
# Copyright (c) 2024 Realtek Semiconductor Corporation, SIBG-SD7
#
7 changes: 7 additions & 0 deletions boards/realtek/rts5912_evb/Kconfig.rts5912_evb
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
# SPDX-License-Identifier: Apache-2.0
#
# Copyright (c) 2024 Realtek Semiconductor Corporation, SIBG-SD7
#

config BOARD_RTS5912_EVB
select SOC_RTS5912
6 changes: 6 additions & 0 deletions boards/realtek/rts5912_evb/board.cmake
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
# SPDX-License-Identifier: Apache-2.0
#
# Copyright (c) 2024 Realtek Semiconductor Corporation, SIBG-SD7
#

include(${ZEPHYR_BASE}/boards/common/openocd.board.cmake)
5 changes: 5 additions & 0 deletions boards/realtek/rts5912_evb/board.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
board:
name: rts5912_evb
vendor: realtek
socs:
- name: rts5912
93 changes: 93 additions & 0 deletions boards/realtek/rts5912_evb/doc/rts5912_evb.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,93 @@
.. _rts5912_evb:

Realtek RTS5912 Evaluation Board
################################

Overview
********

The RTS5912 EVB is a development platform to evaluate the Realtek RTS5912 embedded controller.

.. figure:: rts5912evb.webp
:width: 800px
:align: center
:alt: RTS5912-GR EVB

Hardware
********

- Realtek-M300 Processor (compatible to Cortex-M33)
- Memory:

- 384 KB SRAM
- 64 KB ROM
- 512 KB Flash(MCM)
- 256 B Battery SRAM
- PECI interface 3.1
- FAN, PWM and TACHO pins
- 6x I2C instances
- eSPI header
- 1x PS/2 ports
- Keyboard interface headers

For more information about the evb board please see `RTS5912_EVB_Schematics`_ and `RTS5912_DATASHEET`_

The board is powered through the +5V USB Type-C connector or adaptor.

Supported Features
==================

The ``rts5912_evb`` supports the following hardware features:

+-----------+------------+-------------------------------------+
| Interface | Controller | Driver/Component |
+===========+============+=====================================+
| NVIC | on-chip | nested vector interrupt controller |
+-----------+------------+-------------------------------------+
| UART | on-chip | serial |
+-----------+------------+-------------------------------------+
| GPIO | on-chip | gpio |
+-----------+------------+-------------------------------------+
| PINCTRL | on-chip | pinctrl |
+-----------+------------+-------------------------------------+
| SCCON | on-chip | clock_control |
+-----------+------------+-------------------------------------+
| RTMR | on-chip | timer |
+-----------+------------+-------------------------------------+

Other hardware features are not currently supported by Zephyr.

Programming and Debugging
*************************

Building
========

#. Build :zephyr:code-sample:`hello_world` application as you would normally do.

#. The file ``zephyr.rts5912.bin`` will be created if the build system can build successfully.
This binary image can be found under file "build/zephyr/".

Flashing
========

#. Connect Dediprog into header ``J81`` and ``J82``.
#. Use Dediprog SF600 programmer to write the binary into the external flash ``U10`` at the address 0x0.
#. Power off the board.
#. Set the strap pin ``GPIO108`` to high and power on the board.

Debugging
=========

Using SWD or JTAG with ULINPRO.

References
**********

.. target-notes::

.. _RTS5912_EVB_Schematics:
https://github.com/JasonLin-RealTek/Realtek_EC/blob/main/RTS5912_EVB_Schematic_Ver%201.1_20240701_1407.pdf

.. _RTS5912_DATASHEET:
https://github.com/JasonLin-RealTek/Realtek_EC/blob/main/RTS5912_datasheet_brief.pdf
Binary file added boards/realtek/rts5912_evb/doc/rts5912evb.webp
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
36 changes: 36 additions & 0 deletions boards/realtek/rts5912_evb/rts5912_evb.dts
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
/*
* SPDX-License-Identifier: Apache-2.0
*
* Copyright (c) 2024 Realtek Semiconductor Corporation, SIBG-SD7
*
*/

/dts-v1/;
#include <realtek/ec/rts5912.dtsi>
#include <realtek/ec/rts5912-pinctrl.dtsi>
#include <zephyr/dt-bindings/gpio/gpio.h>
/ {
model = "Realtek RTS5912 Evaluation Board";
compatible = "realtek,rts5912-evb";

chosen {
zephyr,sram = &sram0;
zephyr,console = &uart0;
zephyr,flash = &flash0;
};
};

&uart0 {
status = "okay";
current-speed = <115200>;
};

&uart0_wrapper {
status = "okay";
pinctrl-0 = <&uart_rx_gpio113 &uart_tx_gpio114>;
pinctrl-names = "default";
};

&swj_port {
status = "okay";
};
19 changes: 19 additions & 0 deletions boards/realtek/rts5912_evb/rts5912_evb.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
# SPDX-License-Identifier: Apache-2.0
#
# Copyright (c) 2024 Realtek Semiconductor Corporation, SIBG-SD7
#

identifier: rts5912_evb
name: RTS5912-EVB
type: mcu
arch: arm
toolchain:
- zephyr
- gnuarmemb
- xtools
ram: 64
flash: 320
supported:
- gpio
- pinmux
vendor: realtek
19 changes: 19 additions & 0 deletions boards/realtek/rts5912_evb/rts5912_evb_defconfig
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
# SPDX-License-Identifier: Apache-2.0
#
# Copyright (c) 2024 Realtek Semiconductor Corporation, SIBG-SD7
#

# Enable RTS5912 image tool
CONFIG_REALTEK_RTS5912_BOOTROM_HEADER=y

# Serial Driver
CONFIG_SERIAL=y
CONFIG_UART_NS16550=y
CONFIG_UART_INTERRUPT_DRIVEN=y

# Console
CONFIG_CONSOLE=y
CONFIG_UART_CONSOLE=y

# Enable GPIO
CONFIG_GPIO=y
2 changes: 2 additions & 0 deletions drivers/clock_control/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -38,6 +38,8 @@ zephyr_library_sources_ifdef(CONFIG_CLOCK_CONTROL_AMBIQ clock_cont
zephyr_library_sources_ifdef(CONFIG_CLOCK_CONTROL_PWM clock_control_pwm.c)
zephyr_library_sources_ifdef(CONFIG_CLOCK_CONTROL_RPI_PICO clock_control_rpi_pico.c)
zephyr_library_sources_ifdef(CONFIG_CLOCK_CONTROL_NRF2_GLOBAL_HSFLL clock_control_nrf2_global_hsfll.c)
zephyr_library_sources_ifdef(CONFIG_CLOCK_CONTROL_RTS5912_SCCON clock_control_rts5912_sccon.c)
zephyr_library_sources_ifdef(CONFIG_CLOCK_CONTROL_NRF2_AUDIOPLL clock_control_nrf2_audiopll.c)

if(CONFIG_CLOCK_CONTROL_NRF2)
zephyr_library_sources(clock_control_nrf2_common.c)
Expand Down
2 changes: 2 additions & 0 deletions drivers/clock_control/Kconfig
Original file line number Diff line number Diff line change
Expand Up @@ -56,6 +56,8 @@ source "drivers/clock_control/Kconfig.npcx"

source "drivers/clock_control/Kconfig.rv32m1"

source "drivers/clock_control/Kconfig.rts5912"

source "drivers/clock_control/Kconfig.esp32"

source "drivers/clock_control/Kconfig.litex"
Expand Down
6 changes: 6 additions & 0 deletions drivers/clock_control/Kconfig.nrf
Original file line number Diff line number Diff line change
Expand Up @@ -226,4 +226,10 @@ config CLOCK_CONTROL_NRF2_GLOBAL_HSFLL_INIT_PRIORITY

endif # CLOCK_CONTROL_NRF2_GLOBAL_HSFLL

config CLOCK_CONTROL_NRF2_AUDIOPLL
bool "NRFS AudioPLL driver support"
depends on DT_HAS_NORDIC_NRFS_AUDIOPLL_ENABLED
depends on NRFS_AUDIOPLL_SERVICE_ENABLED
default y

endif # CLOCK_CONTROL_NRF2
10 changes: 10 additions & 0 deletions drivers/clock_control/Kconfig.rts5912
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
# SPDX-License-Identifier: Apache-2.0
#
# Copyright (c) 2024 Realtek Semiconductor Corporation, SIBG-SD7
#

config CLOCK_CONTROL_RTS5912_SCCON
bool "Realtek RTS5912 system clock controller driver"
default y if DT_HAS_REALTEK_RTS5912_SCCON_ENABLED
help
Enable support for RTS5912 system clock controller driver
Loading