1289284Srpaulo/*
2289284Srpaulo * FST module - internal Control interface definitions
3289284Srpaulo * Copyright (c) 2014, Qualcomm Atheros, Inc.
4289284Srpaulo *
5289284Srpaulo * This software may be distributed under the terms of the BSD license.
6289284Srpaulo * See README for more details.
7289284Srpaulo */
8289284Srpaulo
9289284Srpaulo#ifndef FST_CTRL_IFACE_H
10289284Srpaulo#define FST_CTRL_IFACE_H
11289284Srpaulo
12289284Srpaulo#include "fst/fst_ctrl_aux.h"
13289284Srpaulo
14289284Srpaulo#ifdef CONFIG_FST
15289284Srpaulo
16289284Srpaulo/* receiver */
17289284Srpauloint fst_ctrl_iface_mb_info(const u8 *addr, char *buf, size_t buflen);
18289284Srpaulo
19289284Srpauloint fst_ctrl_iface_receive(const char *txtaddr, char *buf, size_t buflen);
20289284Srpaulo
21289284Srpauloextern const struct fst_ctrl *fst_ctrl_cli;
22289284Srpaulo
23289284Srpaulo#else /* CONFIG_FST */
24289284Srpaulo
25289284Srpaulostatic inline int
26289284Srpaulofst_ctrl_iface_mb_info(const u8 *addr, char *buf, size_t buflen)
27289284Srpaulo{
28289284Srpaulo	return 0;
29289284Srpaulo}
30289284Srpaulo
31289284Srpaulo#endif /* CONFIG_FST */
32289284Srpaulo
33289284Srpauloint fst_read_next_int_param(const char *params, Boolean *valid, char **endp);
34289284Srpauloint fst_read_next_text_param(const char *params, char *buf, size_t buflen,
35289284Srpaulo			     char **endp);
36289284Srpauloint fst_read_peer_addr(const char *mac, u8 *peer_addr);
37289284Srpaulo
38289284Srpaulostruct fst_iface_cfg;
39289284Srpaulo
40289284Srpauloint fst_parse_attach_command(const char *cmd, char *ifname, size_t ifname_size,
41289284Srpaulo			     struct fst_iface_cfg *cfg);
42289284Srpauloint fst_parse_detach_command(const char *cmd, char *ifname, size_t ifname_size);
43289284Srpauloint fst_iface_detach(const char *ifname);
44289284Srpaulo
45289284Srpaulo#endif /* CTRL_IFACE_FST_H */
46