1/*
2 * FST module - internal Control interface definitions
3 * Copyright (c) 2014, Qualcomm Atheros, Inc.
4 *
5 * This software may be distributed under the terms of the BSD license.
6 * See README for more details.
7 */
8
9#ifndef FST_CTRL_IFACE_H
10#define FST_CTRL_IFACE_H
11
12#include "fst/fst_ctrl_aux.h"
13
14#ifdef CONFIG_FST
15
16/* receiver */
17int fst_ctrl_iface_mb_info(const u8 *addr, char *buf, size_t buflen);
18
19int fst_ctrl_iface_receive(const char *txtaddr, char *buf, size_t buflen);
20
21extern const struct fst_ctrl *fst_ctrl_cli;
22
23#else /* CONFIG_FST */
24
25static inline int
26fst_ctrl_iface_mb_info(const u8 *addr, char *buf, size_t buflen)
27{
28	return 0;
29}
30
31#endif /* CONFIG_FST */
32
33int fst_read_next_int_param(const char *params, Boolean *valid, char **endp);
34int fst_read_next_text_param(const char *params, char *buf, size_t buflen,
35			     char **endp);
36int fst_read_peer_addr(const char *mac, u8 *peer_addr);
37
38struct fst_iface_cfg;
39
40int fst_parse_attach_command(const char *cmd, char *ifname, size_t ifname_size,
41			     struct fst_iface_cfg *cfg);
42int fst_parse_detach_command(const char *cmd, char *ifname, size_t ifname_size);
43int fst_iface_detach(const char *ifname);
44
45#endif /* CTRL_IFACE_FST_H */
46