/*
* \brief Abstract platform device interface
* \author Alexander Boettcher
* \date 2015-03-15
*/
/*
* Copyright (C) 2015-2017 Genode Labs GmbH
*
* This file is part of the Genode OS framework, which is distributed
* under the terms of the GNU Affero General Public License version 3.
*/
#ifndef _INCLUDE__PLATFORM_DEVICE__DEVICE_H_
#define _INCLUDE__PLATFORM_DEVICE__DEVICE_H_
#include
#include
#include
namespace Platform { class Abstract_device; }
struct Platform::Abstract_device
{
/**
* Get IRQ session capability
*/
virtual Genode::Irq_session_capability irq(Genode::uint8_t) = 0;
/**
* Get IO mem session capability of specified resource id
*/
virtual Genode::Io_mem_session_capability io_mem(Genode::uint8_t,
Genode::Cache_attribute,
Genode::addr_t, Genode::size_t) = 0;
};
#endif /* _INCLUDE__PLATFORM_DEVICE__DEVICE_H_ */