Changeset View
Changeset View
Standalone View
Standalone View
head/sys/arm/mv/armada/wdt.c
Show First 20 Lines • Show All 239 Lines • ▼ Show 20 Lines | mv_wdt_enable_armada_38x_xp_helper() | ||||
irq_cause = read_cpu_ctrl(BRIDGE_IRQ_CAUSE); | irq_cause = read_cpu_ctrl(BRIDGE_IRQ_CAUSE); | ||||
irq_cause &= IRQ_TIMER_WD_CLR; | irq_cause &= IRQ_TIMER_WD_CLR; | ||||
write_cpu_ctrl(BRIDGE_IRQ_CAUSE, irq_cause); | write_cpu_ctrl(BRIDGE_IRQ_CAUSE, irq_cause); | ||||
val = read_cpu_mp_clocks(WD_RSTOUTn_MASK); | val = read_cpu_mp_clocks(WD_RSTOUTn_MASK); | ||||
val |= (WD_GLOBAL_MASK | WD_CPU0_MASK); | val |= (WD_GLOBAL_MASK | WD_CPU0_MASK); | ||||
write_cpu_mp_clocks(WD_RSTOUTn_MASK, val); | write_cpu_mp_clocks(WD_RSTOUTn_MASK, val); | ||||
val = read_cpu_misc(RSTOUTn_MASK); | val = read_cpu_misc(RSTOUTn_MASK_ARMV7); | ||||
val &= ~RSTOUTn_MASK_WD; | val &= ~RSTOUTn_MASK_WD; | ||||
write_cpu_misc(RSTOUTn_MASK, val); | write_cpu_misc(RSTOUTn_MASK_ARMV7, val); | ||||
} | } | ||||
static void | static void | ||||
mv_wdt_enable_armada_38x(void) | mv_wdt_enable_armada_38x(void) | ||||
{ | { | ||||
uint32_t val; | uint32_t val; | ||||
mv_wdt_enable_armada_38x_xp_helper(); | mv_wdt_enable_armada_38x_xp_helper(); | ||||
▲ Show 20 Lines • Show All 41 Lines • ▼ Show 20 Lines | |||||
mv_wdt_disable_armada_38x_xp_helper(void) | mv_wdt_disable_armada_38x_xp_helper(void) | ||||
{ | { | ||||
uint32_t val; | uint32_t val; | ||||
val = read_cpu_mp_clocks(WD_RSTOUTn_MASK); | val = read_cpu_mp_clocks(WD_RSTOUTn_MASK); | ||||
val &= ~(WD_GLOBAL_MASK | WD_CPU0_MASK); | val &= ~(WD_GLOBAL_MASK | WD_CPU0_MASK); | ||||
write_cpu_mp_clocks(WD_RSTOUTn_MASK, val); | write_cpu_mp_clocks(WD_RSTOUTn_MASK, val); | ||||
val = read_cpu_misc(RSTOUTn_MASK); | val = read_cpu_misc(RSTOUTn_MASK_ARMV7); | ||||
val |= RSTOUTn_MASK_WD; | val |= RSTOUTn_MASK_WD; | ||||
write_cpu_misc(RSTOUTn_MASK, RSTOUTn_MASK_WD); | write_cpu_misc(RSTOUTn_MASK_ARMV7, RSTOUTn_MASK_WD); | ||||
} | } | ||||
static void | static void | ||||
mv_wdt_disable_armada_38x(void) | mv_wdt_disable_armada_38x(void) | ||||
{ | { | ||||
uint32_t val; | uint32_t val; | ||||
val = mv_get_timer_control(); | val = mv_get_timer_control(); | ||||
▲ Show 20 Lines • Show All 53 Lines • Show Last 20 Lines |