mirror of
https://github.com/genodelabs/genode.git
synced 2025-05-04 09:43:06 +00:00
os: remove obsolete i.MX framebuffer session
Ref genodelabs/genode#4661
This commit is contained in:
parent
3082950e74
commit
bc5663f1a3
@ -1,47 +0,0 @@
|
|||||||
/*
|
|
||||||
* \brief Client-side i.MX53 specific framebuffer interface
|
|
||||||
* \author Stefan Kalkowski
|
|
||||||
* \date 2013-02-26
|
|
||||||
*/
|
|
||||||
|
|
||||||
/*
|
|
||||||
* Copyright (C) 2006-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__IMX_FRAMEBUFFER_SESSION__CLIENT_H_
|
|
||||||
#define _INCLUDE__IMX_FRAMEBUFFER_SESSION__CLIENT_H_
|
|
||||||
|
|
||||||
#include <framebuffer_session/capability.h>
|
|
||||||
#include <imx_framebuffer_session/imx_framebuffer_session.h>
|
|
||||||
#include <base/rpc_client.h>
|
|
||||||
|
|
||||||
namespace Framebuffer { struct Imx_client; }
|
|
||||||
|
|
||||||
|
|
||||||
struct Framebuffer::Imx_client : Genode::Rpc_client<Imx_session>
|
|
||||||
{
|
|
||||||
explicit Imx_client(Capability<Imx_session> session)
|
|
||||||
: Genode::Rpc_client<Imx_session>(session) { }
|
|
||||||
|
|
||||||
Genode::Dataspace_capability dataspace() override {
|
|
||||||
return call<Rpc_dataspace>(); }
|
|
||||||
|
|
||||||
Mode mode() const override { return call<Rpc_mode>(); }
|
|
||||||
|
|
||||||
void mode_sigh(Genode::Signal_context_capability sigh) override {
|
|
||||||
call<Rpc_mode_sigh>(sigh); }
|
|
||||||
|
|
||||||
void sync_sigh(Genode::Signal_context_capability sigh) override {
|
|
||||||
call<Rpc_sync_sigh>(sigh); }
|
|
||||||
|
|
||||||
void refresh(int x, int y, int w, int h) override {
|
|
||||||
call<Rpc_refresh>(x, y, w, h); }
|
|
||||||
|
|
||||||
void overlay(Genode::addr_t phys_addr, int x, int y, int alpha) override {
|
|
||||||
call<Rpc_overlay>(phys_addr, x, y, alpha); }
|
|
||||||
};
|
|
||||||
|
|
||||||
#endif /* _INCLUDE__IMX_FRAMEBUFFER_SESSION__CLIENT_H_ */
|
|
@ -1,75 +0,0 @@
|
|||||||
/*
|
|
||||||
* \brief Connection to i.MX53 specific frame-buffer service
|
|
||||||
* \author Stefan Kalkowski
|
|
||||||
* \date 2013-02-26
|
|
||||||
*/
|
|
||||||
|
|
||||||
/*
|
|
||||||
* Copyright (C) 2008-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__IMX_FRAMEBUFFER_SESSION__CONNECTION_H_
|
|
||||||
#define _INCLUDE__IMX_FRAMEBUFFER_SESSION__CONNECTION_H_
|
|
||||||
|
|
||||||
#include <imx_framebuffer_session/client.h>
|
|
||||||
#include <util/arg_string.h>
|
|
||||||
#include <base/connection.h>
|
|
||||||
|
|
||||||
namespace Framebuffer { class Imx_connection; }
|
|
||||||
|
|
||||||
|
|
||||||
class Framebuffer::Imx_connection : public Genode::Connection<Imx_session>,
|
|
||||||
public Imx_client
|
|
||||||
{
|
|
||||||
private:
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Create session and return typed session capability
|
|
||||||
*/
|
|
||||||
Capability<Imx_session> _connect(Genode::Parent &parent,
|
|
||||||
unsigned width, unsigned height,
|
|
||||||
Mode::Format format)
|
|
||||||
{
|
|
||||||
using namespace Genode;
|
|
||||||
|
|
||||||
enum { ARGBUF_SIZE = 128 };
|
|
||||||
char argbuf[ARGBUF_SIZE];
|
|
||||||
|
|
||||||
/* donate ram quota for storing server-side meta data */
|
|
||||||
copy_cstring(argbuf, "ram_quota=8K", sizeof(argbuf));
|
|
||||||
|
|
||||||
/* set optional session-constructor arguments */
|
|
||||||
if (width)
|
|
||||||
Arg_string::set_arg(argbuf, sizeof(argbuf), "fb_width", width);
|
|
||||||
if (height)
|
|
||||||
Arg_string::set_arg(argbuf, sizeof(argbuf), "fb_height", height);
|
|
||||||
if (format != Mode::INVALID)
|
|
||||||
Arg_string::set_arg(argbuf, sizeof(argbuf), "fb_format", format);
|
|
||||||
|
|
||||||
return session(parent, argbuf);
|
|
||||||
}
|
|
||||||
|
|
||||||
public:
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Constructor
|
|
||||||
*
|
|
||||||
* \param mode desired size and pixel format
|
|
||||||
*
|
|
||||||
* The specified values are not enforced. After creating the
|
|
||||||
* session, you should validate the actual frame-buffer attributes
|
|
||||||
* by calling the 'info' method of the frame-buffer interface.
|
|
||||||
*/
|
|
||||||
Imx_connection(Genode::Env &env, Framebuffer::Mode mode)
|
|
||||||
:
|
|
||||||
Genode::Connection<Imx_session>(env, _connect(env.parent(),
|
|
||||||
mode.width(), mode.height(),
|
|
||||||
mode.format())),
|
|
||||||
Imx_client(cap())
|
|
||||||
{ }
|
|
||||||
};
|
|
||||||
|
|
||||||
#endif /* _INCLUDE__IMX_FRAMEBUFFER_SESSION__CONNECTION_H_ */
|
|
@ -1,48 +0,0 @@
|
|||||||
/*
|
|
||||||
* \brief i.MX53 specific framebuffer session extension
|
|
||||||
* \author Stefan Kalkowski
|
|
||||||
* \date 2013-02-26
|
|
||||||
*/
|
|
||||||
|
|
||||||
/*
|
|
||||||
* Copyright (C) 2011-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__IMX_FRAMEBUFFER_SESSION__IMX_FRAMEBUFFER_SESSION_H_
|
|
||||||
#define _INCLUDE__IMX_FRAMEBUFFER_SESSION__IMX_FRAMEBUFFER_SESSION_H_
|
|
||||||
|
|
||||||
#include <base/capability.h>
|
|
||||||
#include <base/rpc.h>
|
|
||||||
#include <framebuffer_session/framebuffer_session.h>
|
|
||||||
|
|
||||||
namespace Framebuffer { struct Imx_session; }
|
|
||||||
|
|
||||||
|
|
||||||
struct Framebuffer::Imx_session : Session
|
|
||||||
{
|
|
||||||
virtual ~Imx_session() { }
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Set overlay properties
|
|
||||||
*
|
|
||||||
* \param phys_base physical base address of overlay framebuffer
|
|
||||||
* \param x horizontal position in pixel
|
|
||||||
* \param y vertical position in pixel
|
|
||||||
* \param alpha alpha transparency value of overlay (0-255)
|
|
||||||
*/
|
|
||||||
virtual void overlay(Genode::addr_t phys_base, int x, int y, int alpha) = 0;
|
|
||||||
|
|
||||||
|
|
||||||
/*********************
|
|
||||||
** RPC declaration **
|
|
||||||
*********************/
|
|
||||||
|
|
||||||
GENODE_RPC(Rpc_overlay, void, overlay, Genode::addr_t, int, int, int);
|
|
||||||
|
|
||||||
GENODE_RPC_INTERFACE_INHERIT(Session, Rpc_overlay);
|
|
||||||
};
|
|
||||||
|
|
||||||
#endif /* _INCLUDE__IMX_FRAMEBUFFER_SESSION__IMX_FRAMEBUFFER_SESSION_H_ */
|
|
Loading…
x
Reference in New Issue
Block a user