Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add Realtek DHC target rtd1xxx and its subtargets #12520

Closed
wants to merge 20 commits into from
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
20 commits
Select commit Hold shift + click to select a range
1408097
rtd1xxx: Add Realtek DHC SoC target rtd1xxx and subtargets
phinexhung Apr 21, 2023
4b99ee5
rtd1xxx: kernel: add Realtek chip info driver
realtek-dhc Nov 10, 2022
62530b0
rtd1xxx: kernel: dts: add chip node for rtd129x
phinexhung Apr 24, 2023
504b2d9
rtd1xxx: kernel: add irq mux driver for Realtek DHC SoCs
realtek-dhc Nov 10, 2022
b3504f9
rtd1xxx: kernel: dts: add irqmux node for rtd129x
phinexhung Apr 24, 2023
75fd93d
rtd1xxx: kernel: hwspinlock: add realtek hwlock driver
realtek-dhc Dec 8, 2022
551209b
rtd1xxx: kernel: dts: add hwspinlock node for rtd129x
phinexhung Apr 26, 2023
ad1c3de
rtd1xxx: kernel: add Realtek DHC SoCs clock drivers
realtek-dhc Nov 10, 2022
45f83ed
rtd1xxx: kernel: dts: enable SMP using spin table for rtd129x
phinexhung Apr 24, 2023
a414fa0
rtd1xxx: kernel: dts: add clock node for rtd129x
phinexhung Apr 27, 2023
8f655c7
rtd1xxx: kernel: add Realtek DHC SoCs pinctrl driver
realtek-dhc Nov 10, 2022
9a9598a
arm64: dts: realtek: rtd129x: add pinctrl nodes
phinexhung Apr 27, 2023
bfba08b
rtd1xxx: kernel: Add Rbus Memory Barrier for rtd129x
phinexhung Oct 21, 2022
5470d36
rtd1xxx: kernel: dts: add default bootargs for rtd129x
phinexhung Apr 24, 2023
340b239
rtd1xxx: add default config for rtd1xxx target and its subtargets
phinexhung Apr 24, 2023
8b19b4a
rtd1xxx: image: add saola and giraffe boards for rtd129x
phinexhung Apr 24, 2023
6aab531
rtd1xxx: kernel: dts: add Realtek RTD1319 SoC dts files
realtek-dhc Nov 10, 2022
ce0c77e
rtd1xxx: image: add 1319 Pymparticles eMMC 2GB board support
phinexhung Apr 25, 2023
d8baf34
rtd1xxx: kernel: dts: add Realtek RTD1619B SoC dts files
realtek-dhc Nov 10, 2022
78920a0
rtd1xxx: image: add rtd1619b bleedingedge eMMC 2GB board
phinexhung Apr 25, 2023
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
1 change: 1 addition & 0 deletions include/target.mk
Original file line number Diff line number Diff line change
Expand Up @@ -253,6 +253,7 @@ ifeq ($(DUMP),1)
CPU_TYPE ?= generic
CPU_CFLAGS_generic = -mcpu=generic
CPU_CFLAGS_cortex-a53 = -mcpu=cortex-a53
CPU_CFLAGS_cortex-a55 = -mcpu=cortex-a55
endif
ifeq ($(ARCH),arc)
CPU_TYPE ?= arc700
Expand Down
26 changes: 26 additions & 0 deletions target/linux/rtd1xxx/Makefile
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
# SPDX-License-Identifier: GPL-2.0-only
#
# Copyright (C) 2015-2021 Realtek Semiconductor Corp.

include $(TOPDIR)/rules.mk

BOARD:=rtd1xxx
BOARDNAME:=Realtek RTD Media SoC
FEATURES:=squashfs usb pcie
SUBTARGETS:=rtd129x rtd1319 rtd1619b
DEVICE_TYPE:=nas
CFLAGS:=-O2 -pipe

KERNEL_PATCHVER:=5.15

define Target/Description
Build firmware images for Reatek RTD1xxx SoC family for NAS
endef

include $(INCLUDE_DIR)/target.mk

KERNELNAME:=Image dtbs

DEFAULT_PACKAGES +=e2fsprogs ethtool mkf2fs

$(eval $(call BuildTarget))
36 changes: 36 additions & 0 deletions target/linux/rtd1xxx/config-5.15
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
CONFIG_ARCH_MMAP_RND_BITS=18
CONFIG_ARCH_REALTEK=y
CONFIG_ARM64_4K_PAGES=y
CONFIG_ARM64_TAGGED_ADDR_ABI=y
CONFIG_ARM64_VA_BITS_39=y
CONFIG_ARM64_CRYPTO=y
CONFIG_ARM_ARCH_TIMER_EVTSTREAM=y
CONFIG_BLK_DEV_LOOP=y
CONFIG_BLK_DEV_RAM=y
CONFIG_BLK_DEV_RAM_COUNT=16
CONFIG_BLK_DEV_RAM_SIZE=4096
CONFIG_COMMON_CLK_REALTEK=y
CONFIG_COMPAT_32BIT_TIME=y
CONFIG_HWSPINLOCK=y
CONFIG_HWSPINLOCK_RTK=y
CONFIG_HZ=250
CONFIG_MFD_SYSCON=y
CONFIG_NO_HZ=y
CONFIG_NR_CPUS=4
CONFIG_PINCTRL=y
CONFIG_PINCTRL_RTD=y
CONFIG_PREEMPT=y
CONFIG_RODATA_FULL_DEFAULT_ENABLED=y
CONFIG_REALTEK_CHIP_INFO=y
CONFIG_REALTEK_DHC_INTC=y
CONFIG_RD_GZIP=y
CONFIG_RD_XZ=y
# CONFIG_RTD119X_WATCHDOG is not set
CONFIG_SERIAL_8250_DW=y
CONFIG_UIO=y
CONFIG_UIO_PDRV_GENIRQ=y
# CONFIG_UIO_DMEM_GENIRQ is not set
# CONFIG_UIO_PRUSS is not set
CONFIG_UNMAP_KERNEL_AT_EL0=y
CONFIG_VMAP_STACK=y
CONFIG_ZONE_DMA32=y
Original file line number Diff line number Diff line change
@@ -0,0 +1,311 @@
&cr_pinctrl {
pcie1_clk_pins: pcie1_clk_pins {
pins = "pcie_clkreq_0";
function = "pcie";
};

pcie2_clk_pins: pcie2_clk_pins {
pins = "pcie_clkreq_1";
function = "pcie";
};

emmc_pins: emmc_pins {
pins = "nf_rdy",
"nf_cle",
"nf_rd_n",
"nf_dd_0",
"nf_dd_1",
"nf_dd_2",
"nf_dd_3",
"nf_dd_4",
"nf_dd_5",
"nf_dd_6",
"nf_dd_7";
function = "emmc";
};

emmc_pins_sdr50: emmc_pins_sdr50 {
grp1 {
pins = "nf_rdy",
"nf_cle",
"nf_rd_n",
"nf_dd_0",
"nf_dd_1",
"nf_dd_2",
"nf_dd_3",
"nf_dd_4",
"nf_dd_5",
"nf_dd_6",
"nf_dd_7";
function = "emmc";
realtek,ndrive = <0x7>;
realtek,pdrive = <0x7>;
};

grp2 {
pins = "emmc_dd_sb";
function = "emmc";
realtek,ndrive = <0x3>;
realtek,pdrive = <0x3>;
};
};

emmc_pins_ddr50: emmc_pins_ddr50 {
grp1 {
pins = "nf_rdy",
"nf_cle",
"nf_rd_n",
"nf_dd_0",
"nf_dd_1",
"nf_dd_2",
"nf_dd_3",
"nf_dd_4",
"nf_dd_5",
"nf_dd_6",
"nf_dd_7";
function = "emmc";
realtek,ndrive = <0x3>;
realtek,pdrive = <0x3>;
};
grp2 {
pins = "emmc_dd_sb";
function = "emmc";
realtek,ndrive = <0x3>;
reattek,pdrive = <0x3>;
};
};

emmc_pins_hs200: emmc_pins_hs200 {
grp1 {
pins = "nf_rdy",
"nf_cle",
"nf_rd_n",
"nf_dd_0",
"nf_dd_1",
"nf_dd_2",
"nf_dd_3",
"nf_dd_4",
"nf_dd_5",
"nf_dd_6",
"nf_dd_7";
function = "emmc";
realtek,ndrive = <0xb>;
realtek,pdrive = <0xb>;
};
grp2 {
pins = "emmc_dd_sb";
function = "emmc";
realtek,ndrive = <0x3>;
realtek,pdrive = <0x3>;
};
};

emmc_pins_tune0: emmc_pins_tune0 {
grp1 {
pins = "nf_rdy",
"nf_cle",
"nf_rd_n",
"nf_dd_0",
"nf_dd_1",
"nf_dd_2",
"nf_dd_3",
"nf_dd_4",
"nf_dd_5",
"nf_dd_6",
"nf_dd_7";
function = "emmc";
realtek,ndrive = <0x0>;
realtek,pdrive = <0x0>;
};
grp2 {
pins = "emmc_dd_sb";
function = "emmc";
realtek,ndrive = <0x0>;
realtek,pdrive = <0x0>;
};
};

emmc_pins_tune1: emmc_pins_tune1 {
grp1 {
pins = "nf_rdy",
"nf_cle",
"nf_rd_n",
"nf_dd_0",
"nf_dd_1",
"nf_dd_2",
"nf_dd_3",
"nf_dd_4",
"nf_dd_5",
"nf_dd_6",
"nf_dd_7";
function = "emmc";
realtek,ndrive = <0x1>;
realtek,pdrive = <0x1>;
};
grp2 {
pins = "emmc_dd_sb";
function = "emmc";
realtek,ndrive = <0x0>;
realtek,pdrive = <0x0>;
};
};

emmc_pins_tune2: emmc_pins_tune2 {
grp1 {
pins = "nf_rdy",
"nf_cle",
"nf_rd_n",
"nf_dd_0",
"nf_dd_1",
"nf_dd_2",
"nf_dd_3",
"nf_dd_4",
"nf_dd_5",
"nf_dd_6",
"nf_dd_7";
function = "emmc";
realtek,ndrive = <0x2>;
realtek,pdrive = <0x2>;
};
grp2 {
pins = "emmc_dd_sb";
function = "emmc";
realtek,ndrive = <0x0>;
realtek,pdrive = <0x0>;
};
};

emmc_pins_tune3: emmc_pins_tune3 {
grp1 {
pins = "nf_rdy",
"nf_cle",
"nf_rd_n",
"nf_dd_0",
"nf_dd_1",
"nf_dd_2",
"nf_dd_3",
"nf_dd_4",
"nf_dd_5",
"nf_dd_6",
"nf_dd_7";
function = "emmc";
realtek,ndrive = <0x3>;
realtek,pdrive = <0x3>;
};
grp2 {
pins = "emmc_dd_sb";
function = "emmc";
realtek,ndrive = <0x0>;
realtek,pdrive = <0x0>;
};
};
};

&iso_pinctrl {
i2c0_pins: i2c0-pins {
function = "i2c0";
groups = "i2c0";
};

i2c1_pins: i2c1-pins {
function = "i2c1";
groups = "i2c1";
};

i2c6_pins: i2c6-pins {
function = "i2c6";
groups = "i2c6";
};

uart0_pins: uart0-pins {
function = "uart0";
groups = "uart0";
};

uart1_pins: uart1-pins {
function = "uart1";
groups = "uart1";
};

uart2_0_pins: uart2-0-pins {
function = "uart2_0";
groups = "uart2_0";
};

uart2_1_pins: uart2-1-pins {
function = "uart2_1";
groups = "uart2_1";
};

etn_led_pins: etn_led_pins {
pins = "etn_led_link", "etn_led_rxtx";
function = "etn_led";
};

pwm0_0_pins: pwm0_0_pins {
pins = "iso_gpio_21";
function = "pwm_0";
};

pwm0_1_pins: pwm0_1_pins {
pins = "etn_led_link";
function = "pwm_1";
};

pwm1_0_pins: pwm1_0_pins {
pins = "iso_gpio_22";
function = "pwm_0";
};

pwm1_1_pins: pwm1_1_pins {
pins = "etn_led_rxtx";
function = "pwm_1";
};

pwm2_0_pins: pwm2_0_pins {
pins = "iso_gpio_23";
function = "pwm_0";
};

pwm2_1_pins: pwm2_1_pins {
pins = "nat_led_0";
function = "pwm_1";
};

pwm3_0_pins: pwm3_0_pins {
pins = "iso_gpio_24";
function = "pwm_0";
};

pwm3_1_pins: pwm3_1_pins {
pins = "nat_led_1";
function = "pwm_1";
};
};

&sb2_pinctrl {
i2c2_pins: i2c2-pins {
function = "i2c2";
groups = "tp1_sync", "tp1_clk";
};

i2c3_pins: i2c3-pins {
function = "i2c3";
groups = "tp1_data", "tp1_valid";
};

i2c4_pins: i2c4-pins {
function = "i2c4";
groups = "i2c_scl_4", "i2c_sda_4";
};

i2c5_pins: i2c5-pins {
function = "i2c5";
groups = "i2c_scl_5", "i2c_sda_5";
};

dc_fan_sensor_pins: dc_fan_sensor_pins {
pins = "gpio_9";
function = "dc_fan_sensor";
};
};