hc
2025-02-14 bbb9540dc49f70f6b703d1c8d1b85fa5f602d86e
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
/* SPDX-License-Identifier: GPL-2.0 */
/***   ltpc.h
 *
 *
 ***/
 
#define LT_GETRESULT  0x00
#define LT_WRITEMEM   0x01
#define LT_READMEM    0x02
#define LT_GETFLAGS   0x04
#define LT_SETFLAGS   0x05
#define LT_INIT       0x10
#define LT_SENDLAP    0x13
#define LT_RCVLAP     0x14
 
/* the flag that we care about */
#define LT_FLAG_ALLLAP 0x04
 
struct lt_getresult {
   unsigned char command;
   unsigned char mailbox;
};
 
struct lt_mem {
   unsigned char command;
   unsigned char mailbox;
   unsigned short addr;    /* host order */
   unsigned short length;    /* host order */
};
 
struct lt_setflags {
   unsigned char command;
   unsigned char mailbox;
   unsigned char flags;
};
 
struct lt_getflags {
   unsigned char command;
   unsigned char mailbox;
};
 
struct lt_init {
   unsigned char command;
   unsigned char mailbox;
   unsigned char hint;
};
 
struct lt_sendlap {
   unsigned char command;
   unsigned char mailbox;
   unsigned char dnode;
   unsigned char laptype;
   unsigned short length;    /* host order */
};
 
struct lt_rcvlap {
   unsigned char command;
   unsigned char dnode;
   unsigned char snode;
   unsigned char laptype;
   unsigned short length;    /* host order */
};
 
union lt_command {
   struct lt_getresult getresult;
   struct lt_mem mem;
   struct lt_setflags setflags;
   struct lt_getflags getflags;
   struct lt_init init;
   struct lt_sendlap sendlap;
   struct lt_rcvlap rcvlap;
};
typedef union lt_command lt_command;