Imported Genode release 11.11

This commit is contained in:
Genode Labs
2011-12-22 16:19:25 +01:00
committed by Christian Helmuth
parent 6bcc9aef0e
commit da4e1feaa5
2462 changed files with 320115 additions and 3 deletions

View File

@ -0,0 +1,47 @@
/*
* \brief Linux-specific dataspace client interface
* \author Norman Feske
* \date 2006-05-11
*/
/*
* Copyright (C) 2006-2011 Genode Labs GmbH
*
* This file is part of the Genode OS framework, which is distributed
* under the terms of the GNU General Public License version 2.
*/
#ifndef _INCLUDE__LINUX_DATASPACE__CLIENT_H_
#define _INCLUDE__LINUX_DATASPACE__CLIENT_H_
#include <dataspace/client.h>
#include <linux_dataspace/linux_dataspace.h>
#include <base/rpc_client.h>
#include <util/string.h>
namespace Genode {
struct Linux_dataspace_client : Rpc_client<Linux_dataspace>
{
explicit Linux_dataspace_client(Dataspace_capability ds)
: Rpc_client<Linux_dataspace>(static_cap_cast<Linux_dataspace>(ds)) { }
/*********************************
** Generic dataspace interface **
*********************************/
size_t size() { return call<Rpc_size>(); }
addr_t phys_addr() { return call<Rpc_phys_addr>(); }
bool writable() { return call<Rpc_writable>(); }
/****************************************
** Linux-specific dataspace interface **
****************************************/
Filename fname() { return call<Rpc_fname>(); }
};
}
#endif /* _INCLUDE__LINUX_DATASPACE__CLIENT_H_ */

View File

@ -0,0 +1,47 @@
/*
* \brief Linux-specific dataspace interface
* \author Norman Feske
* \date 2006-07-05
*/
/*
* Copyright (C) 2006-2011 Genode Labs GmbH
*
* This file is part of the Genode OS framework, which is distributed
* under the terms of the GNU General Public License version 2.
*/
#ifndef _INCLUDE__LINUX_DATASPACE__LINUX_DATASPACE_H_
#define _INCLUDE__LINUX_DATASPACE__LINUX_DATASPACE_H_
#include <dataspace/dataspace.h>
#include <base/stdint.h>
#include <base/ipc.h>
#include <base/rpc.h>
namespace Genode {
struct Linux_dataspace : Dataspace
{
enum { FNAME_LEN = 32 };
struct Filename { char buf[FNAME_LEN]; };
virtual ~Linux_dataspace() { }
/**
* Request name of file that represents the dataspace on Linux
*/
virtual Filename fname() = 0;
/*********************
** RPC declaration **
*********************/
GENODE_RPC(Rpc_fname, Filename, fname);
GENODE_RPC_INTERFACE_INHERIT(Dataspace, Rpc_fname);
};
}
#endif /* _INCLUDE__LINUX_DATASPACE__LINUX_DATASPACE_H_ */