xref: /linux/include/uapi/linux/if_eql.h (revision 498495dba268b20e8eadd7fe93c140c68b6cc9d2)
1*e2be04c7SGreg Kroah-Hartman /* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
2607ca46eSDavid Howells /*
3607ca46eSDavid Howells  * Equalizer Load-balancer for serial network interfaces.
4607ca46eSDavid Howells  *
5607ca46eSDavid Howells  * (c) Copyright 1995 Simon "Guru Aleph-Null" Janes
6607ca46eSDavid Howells  * NCM: Network and Communications Management, Inc.
7607ca46eSDavid Howells  *
8607ca46eSDavid Howells  *
9607ca46eSDavid Howells  *	This software may be used and distributed according to the terms
10607ca46eSDavid Howells  *	of the GNU General Public License, incorporated herein by reference.
11607ca46eSDavid Howells  *
12607ca46eSDavid Howells  * The author may be reached as simon@ncm.com, or C/O
13607ca46eSDavid Howells  *    NCM
14607ca46eSDavid Howells  *    Attn: Simon Janes
15607ca46eSDavid Howells  *    6803 Whittier Ave
16607ca46eSDavid Howells  *    McLean VA 22101
17607ca46eSDavid Howells  *    Phone: 1-703-847-0040 ext 103
18607ca46eSDavid Howells  */
19607ca46eSDavid Howells 
20607ca46eSDavid Howells #ifndef _UAPI_LINUX_IF_EQL_H
21607ca46eSDavid Howells #define _UAPI_LINUX_IF_EQL_H
22607ca46eSDavid Howells 
23607ca46eSDavid Howells #define EQL_DEFAULT_SLAVE_PRIORITY 28800
24607ca46eSDavid Howells #define EQL_DEFAULT_MAX_SLAVES     4
25607ca46eSDavid Howells #define EQL_DEFAULT_MTU            576
26607ca46eSDavid Howells #define EQL_DEFAULT_RESCHED_IVAL   HZ
27607ca46eSDavid Howells 
28607ca46eSDavid Howells #define EQL_ENSLAVE     (SIOCDEVPRIVATE)
29607ca46eSDavid Howells #define EQL_EMANCIPATE  (SIOCDEVPRIVATE + 1)
30607ca46eSDavid Howells 
31607ca46eSDavid Howells #define EQL_GETSLAVECFG (SIOCDEVPRIVATE + 2)
32607ca46eSDavid Howells #define EQL_SETSLAVECFG (SIOCDEVPRIVATE + 3)
33607ca46eSDavid Howells 
34607ca46eSDavid Howells #define EQL_GETMASTRCFG (SIOCDEVPRIVATE + 4)
35607ca46eSDavid Howells #define EQL_SETMASTRCFG (SIOCDEVPRIVATE + 5)
36607ca46eSDavid Howells 
37607ca46eSDavid Howells 
38607ca46eSDavid Howells typedef struct master_config {
39607ca46eSDavid Howells 	char	master_name[16];
40607ca46eSDavid Howells 	int	max_slaves;
41607ca46eSDavid Howells 	int	min_slaves;
42607ca46eSDavid Howells } master_config_t;
43607ca46eSDavid Howells 
44607ca46eSDavid Howells typedef struct slave_config {
45607ca46eSDavid Howells 	char	slave_name[16];
46607ca46eSDavid Howells 	long	priority;
47607ca46eSDavid Howells } slave_config_t;
48607ca46eSDavid Howells 
49607ca46eSDavid Howells typedef struct slaving_request {
50607ca46eSDavid Howells 	char	slave_name[16];
51607ca46eSDavid Howells 	long	priority;
52607ca46eSDavid Howells } slaving_request_t;
53607ca46eSDavid Howells 
54607ca46eSDavid Howells 
55607ca46eSDavid Howells #endif /* _UAPI_LINUX_IF_EQL_H */
56