summaryrefslogtreecommitdiff
path: root/sys/arch/arm64/dev/rtkit.h
blob: eda7b26689448d45c00fce53cbecdc29816d0728 (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
/* public domain */

#define RTKIT_MGMT_PWR_STATE_SLEEP	0x0001
#define RTKIT_MGMT_PWR_STATE_QUIESCED	0x0010
#define RTKIT_MGMT_PWR_STATE_ON		0x0020

struct rtkit_state;

struct rtkit {
	void *rk_cookie;
	bus_dma_tag_t rk_dmat;
	int (*rk_map)(void *, bus_addr_t, bus_size_t);
};

#define RK_WAKEUP	0x00000001

struct rtkit_state *rtkit_init(int, const char *, int, struct rtkit *);
int	rtkit_boot(struct rtkit_state *);
void	rtkit_shutdown(struct rtkit_state *);
int	rtkit_set_ap_pwrstate(struct rtkit_state *, uint16_t);
int	rtkit_poll(struct rtkit_state *);
int	rtkit_start_endpoint(struct rtkit_state *, uint32_t,
	    void (*)(void *, uint64_t), void *);
int	rtkit_send_endpoint(struct rtkit_state *, uint32_t, uint64_t);

int	aplrtk_start(uint32_t);
int	aplsart_map(uint32_t, bus_addr_t, bus_size_t);