Index: yc_trng.c
===================================================================
--- /YC3121_SDK/fw/sdk/yc_trng.c	(revision 759)
+++ /YC3121_SDK/fw/sdk/yc_trng.c	(working copy)
@@ -10,13 +10,14 @@
 void TRNG_Init(void)
 {
     disable_intr(INTR_TRNG);
+    SYSCTRL_HWCTRL(11)  = 0xff;
+    SYSCTRL_HWCTRL(10) |= 0xc0;
+    
     *(volatile int *)(0xf8524) = 0x87878787;
-    SYSCTRL_RNG_CTRL = 0x36077;  										//rng generation enable
+    SYSCTRL_RNG_CTRL = 0x667f;  										//rng generation enable
     while ((SYSCTRL_RNG_CTRL & (1 << 28)) == 0)
     {
     }
-    SYSCTRL_RNG_CTRL = 0x36077;
-    SYSCTRL_RNG_CTRL = 0x16017;
 //	enable_intr(INTR_TRNG);
 }
 
@@ -58,5 +59,6 @@
 
 void Disable_Trng(void)
 {
-    SYSCTRL_HWCTRL(11) = 0;
+    SYSCTRL_HWCTRL(11)  = 0;
+    SYSCTRL_HWCTRL(10) &= 1;
 }

