xref: /linux/include/uapi/linux/if_eql.h (revision 498495dba268b20e8eadd7fe93c140c68b6cc9d2)
1 /* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
2 /*
3  * Equalizer Load-balancer for serial network interfaces.
4  *
5  * (c) Copyright 1995 Simon "Guru Aleph-Null" Janes
6  * NCM: Network and Communications Management, Inc.
7  *
8  *
9  *	This software may be used and distributed according to the terms
10  *	of the GNU General Public License, incorporated herein by reference.
11  *
12  * The author may be reached as simon@ncm.com, or C/O
13  *    NCM
14  *    Attn: Simon Janes
15  *    6803 Whittier Ave
16  *    McLean VA 22101
17  *    Phone: 1-703-847-0040 ext 103
18  */
19 
20 #ifndef _UAPI_LINUX_IF_EQL_H
21 #define _UAPI_LINUX_IF_EQL_H
22 
23 #define EQL_DEFAULT_SLAVE_PRIORITY 28800
24 #define EQL_DEFAULT_MAX_SLAVES     4
25 #define EQL_DEFAULT_MTU            576
26 #define EQL_DEFAULT_RESCHED_IVAL   HZ
27 
28 #define EQL_ENSLAVE     (SIOCDEVPRIVATE)
29 #define EQL_EMANCIPATE  (SIOCDEVPRIVATE + 1)
30 
31 #define EQL_GETSLAVECFG (SIOCDEVPRIVATE + 2)
32 #define EQL_SETSLAVECFG (SIOCDEVPRIVATE + 3)
33 
34 #define EQL_GETMASTRCFG (SIOCDEVPRIVATE + 4)
35 #define EQL_SETMASTRCFG (SIOCDEVPRIVATE + 5)
36 
37 
38 typedef struct master_config {
39 	char	master_name[16];
40 	int	max_slaves;
41 	int	min_slaves;
42 } master_config_t;
43 
44 typedef struct slave_config {
45 	char	slave_name[16];
46 	long	priority;
47 } slave_config_t;
48 
49 typedef struct slaving_request {
50 	char	slave_name[16];
51 	long	priority;
52 } slaving_request_t;
53 
54 
55 #endif /* _UAPI_LINUX_IF_EQL_H */
56