1b6825ab724b9d671db9f26faae035f2d5ade04b6Dmitry Shmidt/*
26dbcf2181152a81ab5f3bc5fa765288341a1b7abDmitry Shmidt * Definitions for DHD command-line utility
3b6825ab724b9d671db9f26faae035f2d5ade04b6Dmitry Shmidt *
438eaaf5a34502fe465cf8b6ac7a2dfcafa17ba41Dmitry Shmidt * Copyright (C) 1999-2013, Broadcom Corporation
5ac2bc7e7aaad957f235992ff74d5f9af34dc5f88Dmitry Shmidt *
66dbcf2181152a81ab5f3bc5fa765288341a1b7abDmitry Shmidt * Permission to use, copy, modify, and/or distribute this software for any
76dbcf2181152a81ab5f3bc5fa765288341a1b7abDmitry Shmidt * purpose with or without fee is hereby granted, provided that the above
86dbcf2181152a81ab5f3bc5fa765288341a1b7abDmitry Shmidt * copyright notice and this permission notice appear in all copies.
96dbcf2181152a81ab5f3bc5fa765288341a1b7abDmitry Shmidt *
106dbcf2181152a81ab5f3bc5fa765288341a1b7abDmitry Shmidt * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
116dbcf2181152a81ab5f3bc5fa765288341a1b7abDmitry Shmidt * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
126dbcf2181152a81ab5f3bc5fa765288341a1b7abDmitry Shmidt * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY
136dbcf2181152a81ab5f3bc5fa765288341a1b7abDmitry Shmidt * SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
146dbcf2181152a81ab5f3bc5fa765288341a1b7abDmitry Shmidt * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION
156dbcf2181152a81ab5f3bc5fa765288341a1b7abDmitry Shmidt * OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN
166dbcf2181152a81ab5f3bc5fa765288341a1b7abDmitry Shmidt * CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
17b6825ab724b9d671db9f26faae035f2d5ade04b6Dmitry Shmidt *
1838eaaf5a34502fe465cf8b6ac7a2dfcafa17ba41Dmitry Shmidt * $Id: dhdu.h 379386 2013-01-17 07:20:55Z $
19b6825ab724b9d671db9f26faae035f2d5ade04b6Dmitry Shmidt */
20b6825ab724b9d671db9f26faae035f2d5ade04b6Dmitry Shmidt
21b6825ab724b9d671db9f26faae035f2d5ade04b6Dmitry Shmidt#ifndef _dhdu_h_
22b6825ab724b9d671db9f26faae035f2d5ade04b6Dmitry Shmidt#define _dhdu_h_
23b6825ab724b9d671db9f26faae035f2d5ade04b6Dmitry Shmidt
24b6825ab724b9d671db9f26faae035f2d5ade04b6Dmitry Shmidt#include "dhdu_cmd.h"
25b6825ab724b9d671db9f26faae035f2d5ade04b6Dmitry Shmidt
26b6825ab724b9d671db9f26faae035f2d5ade04b6Dmitry Shmidtextern char *dhdu_av0;
27b6825ab724b9d671db9f26faae035f2d5ade04b6Dmitry Shmidt
28b6825ab724b9d671db9f26faae035f2d5ade04b6Dmitry Shmidt/* parse common option */
29b6825ab724b9d671db9f26faae035f2d5ade04b6Dmitry Shmidtextern int dhd_option(char ***pargv, char **pifname, int *phelp);
30b6825ab724b9d671db9f26faae035f2d5ade04b6Dmitry Shmidtextern void dhd_cmd_init(void);
31b6825ab724b9d671db9f26faae035f2d5ade04b6Dmitry Shmidt
32b6825ab724b9d671db9f26faae035f2d5ade04b6Dmitry Shmidt/* print usage */
33b6825ab724b9d671db9f26faae035f2d5ade04b6Dmitry Shmidtextern void dhd_cmd_usage(cmd_t *cmd);
34b6825ab724b9d671db9f26faae035f2d5ade04b6Dmitry Shmidtextern void dhd_usage(cmd_t *port_cmds);
35b6825ab724b9d671db9f26faae035f2d5ade04b6Dmitry Shmidtextern void dhd_cmds_usage(cmd_t *port_cmds);
36b6825ab724b9d671db9f26faae035f2d5ade04b6Dmitry Shmidt
37b6825ab724b9d671db9f26faae035f2d5ade04b6Dmitry Shmidt/* print helpers */
38b6825ab724b9d671db9f26faae035f2d5ade04b6Dmitry Shmidtextern void dhd_printlasterror(void *dhd);
39b6825ab724b9d671db9f26faae035f2d5ade04b6Dmitry Shmidtextern void dhd_printint(int val);
40b6825ab724b9d671db9f26faae035f2d5ade04b6Dmitry Shmidt
41b6825ab724b9d671db9f26faae035f2d5ade04b6Dmitry Shmidt/* check driver version */
42b6825ab724b9d671db9f26faae035f2d5ade04b6Dmitry Shmidtextern int dhd_check(void *dhd);
43b6825ab724b9d671db9f26faae035f2d5ade04b6Dmitry Shmidt
44b6825ab724b9d671db9f26faae035f2d5ade04b6Dmitry Shmidt/* utility functions */
45b6825ab724b9d671db9f26faae035f2d5ade04b6Dmitry Shmidtstruct ipv4_addr;
46b6825ab724b9d671db9f26faae035f2d5ade04b6Dmitry Shmidtint dhd_ether_atoe(const char *a, struct ether_addr *n);
47b6825ab724b9d671db9f26faae035f2d5ade04b6Dmitry Shmidtint dhd_atoip(const char *a, struct ipv4_addr *n);
48b6825ab724b9d671db9f26faae035f2d5ade04b6Dmitry Shmidt
49b6825ab724b9d671db9f26faae035f2d5ade04b6Dmitry Shmidt/* integer output format */
50b6825ab724b9d671db9f26faae035f2d5ade04b6Dmitry Shmidt#define INT_FMT_DEC	0	/* signed integer */
51b6825ab724b9d671db9f26faae035f2d5ade04b6Dmitry Shmidt#define INT_FMT_UINT	1	/* unsigned integer */
52b6825ab724b9d671db9f26faae035f2d5ade04b6Dmitry Shmidt#define INT_FMT_HEX	2	/* hexdecimal */
53b6825ab724b9d671db9f26faae035f2d5ade04b6Dmitry Shmidt
54b6825ab724b9d671db9f26faae035f2d5ade04b6Dmitry Shmidt/* command line argument usage */
55b6825ab724b9d671db9f26faae035f2d5ade04b6Dmitry Shmidt#define CMD_ERR		-1	/* Error for command */
56b6825ab724b9d671db9f26faae035f2d5ade04b6Dmitry Shmidt#define CMD_OPT		0	/* a command line option */
57b6825ab724b9d671db9f26faae035f2d5ade04b6Dmitry Shmidt#define CMD_DHD		1	/* the start of a dhd command */
58b6825ab724b9d671db9f26faae035f2d5ade04b6Dmitry Shmidt
59b6825ab724b9d671db9f26faae035f2d5ade04b6Dmitry Shmidt#endif /* _dhdu_h_ */
60