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 */
17  int fst_ctrl_iface_mb_info(const u8 *addr, char *buf, size_t buflen);
18  
19  int fst_ctrl_iface_receive(const char *txtaddr, char *buf, size_t buflen);
20  
21  extern const struct fst_ctrl *fst_ctrl_cli;
22  
23  #else /* CONFIG_FST */
24  
25  static inline int
fst_ctrl_iface_mb_info(const u8 * addr,char * buf,size_t buflen)26  fst_ctrl_iface_mb_info(const u8 *addr, char *buf, size_t buflen)
27  {
28  	return 0;
29  }
30  
31  #endif /* CONFIG_FST */
32  
33  int fst_read_next_int_param(const char *params, bool *valid, char **endp);
34  int fst_read_next_text_param(const char *params, char *buf, size_t buflen,
35  			     char **endp);
36  int fst_read_peer_addr(const char *mac, u8 *peer_addr);
37  
38  struct fst_iface_cfg;
39  
40  int fst_parse_attach_command(const char *cmd, char *ifname, size_t ifname_size,
41  			     struct fst_iface_cfg *cfg);
42  int fst_parse_detach_command(const char *cmd, char *ifname, size_t ifname_size);
43  int fst_iface_detach(const char *ifname);
44  
45  #endif /* CTRL_IFACE_FST_H */
46