summaryrefslogtreecommitdiffstats
path: root/dbus.h
blob: aa520c2a0fab9e1f8b10f10e2361ce078c5f7ce3 (plain)
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
/*
 * Copyright 2016 IBM
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 * http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 *
 */

#ifndef MBOX_DBUS_H
#define MBOX_DBUS_H

#define DBUS_NAME		"org.openbmc.mboxd"
#define DOBJ_NAME		"/org/openbmc/mboxd"

/* Commands */
#define DBUS_C_PING		0x00
#define	DBUS_C_DAEMON_STATE	0x01
#define DBUS_C_RESET		0x02
#define DBUS_C_SUSPEND		0x03
#define DBUS_C_RESUME		0x04
#define DBUS_C_MODIFIED		0x05
#define DBUS_C_KILL		0x06
#define DBUS_C_LPC_STATE	0x07
#define NUM_DBUS_CMDS		(DBUS_C_LPC_STATE + 1)

/* Command Args */
/* Resume */
#define RESUME_NUM_ARGS		1
#define RESUME_NOT_MODIFIED	0x00
#define RESUME_FLASH_MODIFIED	0x01

/* Return Values */
#define DBUS_SUCCESS		0x00 /* Command Succeded */
#define E_DBUS_INTERNAL		0x01 /* Internal DBUS Error */
#define E_DBUS_INVAL		0x02 /* Invalid Command */
#define E_DBUS_REJECTED		0x03 /* Daemon Rejected Request */
#define E_DBUS_HARDWARE		0x04 /* BMC Hardware Error */
#define E_DBUS_NO_MEM		0x05 /* Failed Memory Allocation */

/* Response Args */
/* Status */
#define DAEMON_STATE_NUM_ARGS	1
#define DAEMON_STATE_ACTIVE	0x00 /* Daemon Active */
#define DAEMON_STATE_SUSPENDED	0x01 /* Daemon Suspended */
/* LPC State */
#define LPC_STATE_NUM_ARGS	1
#define LPC_STATE_INVALID	0x00 /* Invalid State */
#define LPC_STATE_FLASH		0x01 /* LPC Maps Flash Directly */
#define LPC_STATE_MEM		0x02 /* LPC Maps Memory */

struct mbox_dbus_msg {
	uint8_t cmd;
	size_t num_args;
	uint8_t *args;
};

#endif /* MBOX_DBUS_H */
OpenPOWER on IntegriCloud