1、原理图如下:
2、 kernel部分:
kernel/arch/arm64/boot/dts/rockchip/rk3568-evb1-ddr4-v10.dtsi
kernel/arch/arm64/configs/rockchip_defconfig
diff --git a/arch/arm64/boot/dts/rockchip/rk3568-evb1-ddr4-v10.dtsi b/arch/arm64/boot/dts/rockchip/rk3568-evb1-ddr4-v10.dtsi
old mode 100644
new mode 100755
index d4035a3..b8489b1
--- a/arch/arm64/boot/dts/rockchip/rk3568-evb1-ddr4-v10.dtsi
+++ b/arch/arm64/boot/dts/rockchip/rk3568-evb1-ddr4-v10.dtsi
@@ -270,6 +270,21 @@
power-supply = <&vcc3v3_lcd0_n>;
};
+&i2c5 {
+ status = "okay";
+
+ hym8563: hym8563@51 {
+ status = "okay";
+ compatible = "haoyu,hym8563";
+ reg = <0x51>;
+ pinctrl-names = "default";
+ pinctrl-0 = <&rtc_int>;
+ interrupt-parent = <&gpio0>;
+ interrupts = <RK_PD3 IRQ_TYPE_LEVEL_LOW>;
+ };
+};
+
+
&i2c4 {
status = "okay";
gc8034: gc8034@37 {
@@ -380,6 +395,13 @@
<0 RK_PC1 RK_FUNC_GPIO &pcfg_pull_none>;
};
};
+
+ rtc {
+ rtc_int: rtc-int {
+ rockchip,pins = <0 RK_PD3 RK_FUNC_GPIO &pcfg_pull_up>;
+ };
+ };
+
headphone {
hp_det: hp-det {
rockchip,pins = <3 RK_PC2 RK_FUNC_GPIO &pcfg_pull_down>;
diff --git a/arch/arm64/configs/rockchip_defconfig b/arch/arm64/configs/rockchip_defconfig
old mode 100644
new mode 100755
index ff0cf61..4ab26a9
--- a/arch/arm64/configs/rockchip_defconfig
+++ b/arch/arm64/configs/rockchip_defconfig
@@ -801,7 +801,8 @@ CONFIG_LEDS_TRIGGER_HEARTBEAT=y
CONFIG_LEDS_TRIGGER_BACKLIGHT=y
CONFIG_LEDS_TRIGGER_DEFAULT_ON=y
CONFIG_RTC_CLASS=y
-CONFIG_RTC_DRV_RK808=y
+#CONFIG_RTC_DRV_RK808 is not set
+CONFIG_RTC_DRV_HYM8563=y
CONFIG_DMADEVICES=y
CONFIG_PL330_DMA=y
CONFIG_SW_SYNC=y
@@ -942,3 +943,7 @@ CONFIG_SCHED_STACK_END_CHECK=y
# CONFIG_DEBUG_PREEMPT is not set
CONFIG_ENABLE_DEFAULT_TRACERS=y
CONFIG_BUG_ON_DATA_CORRUPTION=y
+CONFIG_RTC_HCTOSYS=y
+CONFIG_RTC_HCTOSYS_DEVICE="rtc0"
+CONFIG_RTC_SYSTOHC=y
+CONFIG_RTC_SYSTOHC_DEVICE="rtc0"
3、device/rockchip/common/sepolicy/vendor/genfs_contexts
diff --git a/device/rockchip/common/sepolicy/vendor/genfs_contexts b/device/rockchip/common/sepolicy/vendor/genfs_contexts
index 3c007b0..27ee7e5 100644
--- a/device/rockchip/common/sepolicy/vendor/genfs_contexts
+++ b/device/rockchip/common/sepolicy/vendor/genfs_contexts
@@ -28,6 +28,9 @@ genfscon sysfs /devices/platform/ff3c0000.i2c/i2c-0/0-0020/rk808-rtc/rtc/rtc0/hc
# for kernel 4.19
genfscon debugfs /sync u:object_r:debugfs_sw_sync:s0
+# rk356x RTC
+genfscon sysfs /devices/platform/fe5e0000.i2c/i2c-5/5-0051/rtc/rtc0/hctosys u:object_r:sysfs_hctosys:s0
+
# for usb grf
genfscon sysfs /class/extcon/extcon0 u:object_r:sysfs_extcon:s0
genfscon sysfs /devices/platform/rk-headset/extcon/extcon1/state u:object_r:sysfs_extcon:s0