1252998Srpaulo#-
2252998Srpaulo# Copyright (c) 2013 Rui Paulo
3252998Srpaulo# All rights reserved.
4252998Srpaulo#
5252998Srpaulo# Redistribution and use in source and binary forms, with or without
6252998Srpaulo# modification, are permitted provided that the following conditions
7252998Srpaulo# are met:
8252998Srpaulo# 1. Redistributions of source code must retain the above copyright
9252998Srpaulo#    notice, this list of conditions and the following disclaimer.
10252998Srpaulo# 2. Redistributions in binary form must reproduce the above copyright
11252998Srpaulo#    notice, this list of conditions and the following disclaimer in the
12252998Srpaulo#    documentation and/or other materials provided with the distribution.
13252998Srpaulo#
14252998Srpaulo# THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
15252998Srpaulo# ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
16252998Srpaulo# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
17252998Srpaulo# ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
18252998Srpaulo# FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
19252998Srpaulo# DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
20252998Srpaulo# OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
21252998Srpaulo# HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
22252998Srpaulo# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
23252998Srpaulo# OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
24252998Srpaulo# SUCH DAMAGE.
25252998Srpaulo#
26252998Srpaulo# $FreeBSD: releng/10.2/sys/dev/mbox/mbox_if.m 252998 2013-07-07 19:47:22Z rpaulo $
27252998Srpaulo#
28252998Srpaulo# Mailboxes are used as an IPC mechanism that allows subsystems to 
29252998Srpaulo# communicate with each other.
30252998Srpaulo# A system can have multiple mailboxes (e.g. OMAP4) but there's usually a
31252998Srpaulo# system wide mailbox.
32252998Srpaulo#
33252998Srpaulo
34252998SrpauloINTERFACE mbox;
35252998Srpaulo
36252998SrpauloMETHOD int read {
37252998Srpaulo	device_t	dev;
38252998Srpaulo	int		channel;
39252998Srpaulo	uint32_t	*data;
40252998Srpaulo};
41252998Srpaulo
42252998SrpauloMETHOD int write {
43252998Srpaulo	device_t	dev;
44252998Srpaulo	int		channel;
45252998Srpaulo	uint32_t	data;
46252998Srpaulo};
47