|
@@ -636,6 +636,9 @@ int timer_init(void)
|
|
|
#ifdef CONFIG_FSL_LSCH3
|
|
|
u32 __iomem *cltbenr = (u32 *)CONFIG_SYS_FSL_PMU_CLTBENR;
|
|
|
#endif
|
|
|
+#ifdef CONFIG_LS2080A
|
|
|
+ u32 __iomem *pctbenr = (u32 *)FSL_PMU_PCTBENR_OFFSET;
|
|
|
+#endif
|
|
|
#ifdef COUNTER_FREQUENCY_REAL
|
|
|
unsigned long cntfrq = COUNTER_FREQUENCY_REAL;
|
|
|
|
|
@@ -650,6 +653,15 @@ int timer_init(void)
|
|
|
out_le32(cltbenr, 0xf);
|
|
|
#endif
|
|
|
|
|
|
+#ifdef CONFIG_LS2080A
|
|
|
+ /*
|
|
|
+ * In certain Layerscape SoCs, the clock for each core's
|
|
|
+ * has an enable bit in the PMU Physical Core Time Base Enable
|
|
|
+ * Register (PCTBENR), which allows the watchdog to operate.
|
|
|
+ */
|
|
|
+ setbits_le32(pctbenr, 0xff);
|
|
|
+#endif
|
|
|
+
|
|
|
/* Enable clock for timer
|
|
|
* This is a global setting.
|
|
|
*/
|