From 58f41971b1e801ad2fbcea08e5152afa2b18ca73 Mon Sep 17 00:00:00 2001 From: Uros Majstorovic Date: Mon, 28 Jul 2025 23:27:12 +0200 Subject: sys logging added; power management reimplemented; bugfixes; --- fw/fe310/eos/dev/aon.c | 23 ++++++++++++++++++----- 1 file changed, 18 insertions(+), 5 deletions(-) (limited to 'fw/fe310/eos/dev/aon.c') diff --git a/fw/fe310/eos/dev/aon.c b/fw/fe310/eos/dev/aon.c index 3d8aaf6..7e4f5ec 100644 --- a/fw/fe310/eos/dev/aon.c +++ b/fw/fe310/eos/dev/aon.c @@ -6,13 +6,12 @@ #include "aon.h" -#ifdef EOS_DEBUG -#include -#endif - #define AON_EVE_REG 0 #define AON_EVE_MASK 0x03 +#define AON_NET_REG 0 +#define AON_NET_MASK 0x04 + void eos_aon_save4eve(uint8_t power_state) { uint32_t reg; @@ -21,9 +20,23 @@ void eos_aon_save4eve(uint8_t power_state) { reg &= ~AON_EVE_MASK; reg |= power_state; - eos_aon_set_reg(0, power_state); + eos_aon_set_reg(AON_EVE_REG, reg); } uint8_t eos_aon_load4eve(void) { return (eos_aon_get_reg(AON_EVE_REG) & AON_EVE_MASK); } + +void eos_aon_save4net(int absent) { + uint32_t reg; + + reg = eos_aon_get_reg(AON_NET_REG); + reg &= ~AON_NET_MASK; + if (absent) reg |= AON_NET_MASK; + + eos_aon_set_reg(AON_NET_REG, reg); +} + +int eos_aon_load4net(void) { + return !!(eos_aon_get_reg(AON_NET_REG) & AON_NET_MASK); +} \ No newline at end of file -- cgit v1.2.3