blob: 7e4f5ec1acc69ad7afe02b606b2687047aed7c38 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
|
#include <stdlib.h>
#include <stdint.h>
#include "eos.h"
#include "soc/aon.h"
#include "aon.h"
#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;
power_state &= AON_EVE_MASK;
reg = eos_aon_get_reg(AON_EVE_REG);
reg &= ~AON_EVE_MASK;
reg |= 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);
}
|