/* SPDX-License-Identifier: Apache-2.0 */
/* Copyright (C) 2018 IBM Corp. */

#ifndef DBUS_H
#define DBUS_H

#include <stdint.h>
#include <stddef.h>

/*
 * "mbox" will become an inappropriate name for the protocol/daemon, so claim a
 * different name on the public interface.
 *
 * "hiomapd" expands to "Host I/O Map Daemon"
 *
 * TODO: The Great Rename
 */
#define MBOX_DBUS_NAME			"xyz.openbmc_project.Hiomapd"
#define MBOX_DBUS_OBJECT		"/xyz/openbmc_project/Hiomapd"
#define MBOX_DBUS_CONTROL_IFACE		"xyz.openbmc_project.Hiomapd.Control"
#define MBOX_DBUS_PROTOCOL_IFACE	"xyz.openbmc_project.Hiomapd.Protocol"

/* Legacy interface */
#define MBOX_DBUS_LEGACY_NAME		"org.openbmc.mboxd"
#define MBOX_DBUS_LEGACY_OBJECT		"/org/openbmc/mboxd"

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

/* 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 */

#endif /* MBOX_DBUS_H */
