os: deprecate platform API for x86, rpi, imx53

* Move platform APIs to "legacy/" subdirectory
* Rename old pc, imx53, and rpi platform_drv
  to "legacy_*_platform_drv"

Fix #4359
This commit is contained in:
Stefan Kalkowski 2021-12-22 12:04:09 +01:00 committed by Christian Helmuth
parent 622ddb5b49
commit 7db602faec
98 changed files with 178 additions and 202 deletions

View File

@ -64,10 +64,10 @@ proc append_platform_drv_build_components {} {
} }
proc platform_drv_binary {} { proc platform_drv_binary {} {
if {[have_board imx53_qsb]} { return imx53_platform_drv } if {[have_board imx53_qsb]} { return legacy_imx53_platform_drv }
if {[have_board imx53_qsb_tz]} { return imx53_platform_drv } if {[have_board imx53_qsb_tz]} { return legacy_imx53_platform_drv }
if {[have_board rpi]} { return rpi_platform_drv } if {[have_board rpi]} { return rpi_platform_drv }
if {[have_board pc]} { return platform_drv } if {[have_board pc]} { return legacy_pc_platform_drv }
return no_platform_drv_available return no_platform_drv_available
} }

View File

@ -18,8 +18,8 @@
#include <dataspace/client.h> #include <dataspace/client.h>
#include <io_port_session/connection.h> #include <io_port_session/connection.h>
#include <io_mem_session/connection.h> #include <io_mem_session/connection.h>
#include <platform_session/connection.h> #include <legacy/x86/platform_session/connection.h>
#include <platform_device/client.h> #include <legacy/x86/platform_device/client.h>
#include <util/retry.h> #include <util/retry.h>
/* local includes */ /* local includes */

View File

@ -28,8 +28,8 @@
#include <io_mem_session/connection.h> #include <io_mem_session/connection.h>
#include <io_port_session/connection.h> #include <io_port_session/connection.h>
#include <irq_session/connection.h> #include <irq_session/connection.h>
#include <platform_device/client.h> #include <legacy/x86/platform_device/client.h>
#include <platform_session/connection.h> #include <legacy/x86/platform_session/connection.h>
#include <rm_session/connection.h> #include <rm_session/connection.h>
#include <region_map/client.h> #include <region_map/client.h>
#include <timer_session/connection.h> #include <timer_session/connection.h>

View File

@ -1,5 +1,6 @@
_/raw/drivers_interactive-rpi _/raw/drivers_interactive-rpi
_/src/event_filter _/src/event_filter
_/src/report_rom
_/src/rpi_fb_drv _/src/rpi_fb_drv
_/src/platform_drv _/src/platform_drv
_/src/usb_hid_drv _/src/usb_hid_drv

View File

@ -26,8 +26,34 @@
</route> </route>
</start> </start>
<start name="platform_drv" caps="200"> <start name="rpi_platform_drv" caps="200">
<binary name="rpi_platform_drv"/> <resource name="RAM" quantum="2M"/>
<provides> <service name="Platform"/> </provides>
<config>
<device name="dwc_otg" type="brcm,bcm2835-usb">
<io_mem address="0x20980000" size="0x10000"/>
<irq number="9"/>
<power-domain name="usb"/>
</device>
<policy label_prefix="usb_drv" info="yes">
<device name="dwc_otg"/>
</policy>
</config>
<route>
<service name="IRQ"> <parent/> </service>
<service name="IO_MEM"> <parent/> </service>
<service name="ROM"> <parent/> </service>
<service name="PD"> <parent/> </service>
<service name="RM"> <parent/> </service>
<service name="CPU"> <parent/> </service>
<service name="LOG"> <parent/> </service>
<service name="Timer"> <parent/> </service>
</route>
</start>
<start name="legacy_rpi_platform_drv" caps="200">
<resource name="RAM" quantum="3M"/> <resource name="RAM" quantum="3M"/>
<provides> <provides>
<service name="Platform"/> <service name="Platform"/>
@ -69,7 +95,7 @@
<service name="CPU"> <parent/> </service> <service name="CPU"> <parent/> </service>
<service name="LOG"> <parent/> </service> <service name="LOG"> <parent/> </service>
<service name="Timer"> <parent/> </service> <service name="Timer"> <parent/> </service>
<service name="Platform"> <child name="platform_drv"/> </service> <service name="Platform"> <child name="rpi_platform_drv"/> </service>
</route> </route>
</start> </start>
@ -95,7 +121,7 @@
<resource name="RAM" quantum="4M"/> <resource name="RAM" quantum="4M"/>
<route> <route>
<service name="ROM" label="config"> <parent label="fb_drv.config"/> </service> <service name="ROM" label="config"> <parent label="fb_drv.config"/> </service>
<service name="Platform"> <child name="platform_drv"/> </service> <service name="Platform"> <child name="legacy_rpi_platform_drv"/> </service>
<service name="IO_MEM"> <parent/> </service> <service name="IO_MEM"> <parent/> </service>
<service name="ROM"> <parent/> </service> <service name="ROM"> <parent/> </service>
<service name="PD"> <parent/> </service> <service name="PD"> <parent/> </service>

View File

@ -95,7 +95,7 @@ proc platform_drv_config_non_x86 {} {
proc platform_drv_binary_non_x86 {} { proc platform_drv_binary_non_x86 {} {
if {[have_board imx6q_sabrelite]} { return platform_drv } if {[have_board imx6q_sabrelite]} { return platform_drv }
if {[have_board rpi]} { return rpi_new_platform_drv } if {[have_board rpi]} { return rpi_platform_drv }
return no_platform_drv_available return no_platform_drv_available
} }

View File

@ -18,8 +18,8 @@
/* Genode includes */ /* Genode includes */
#include <base/object_pool.h> #include <base/object_pool.h>
#include <platform_session/connection.h> #include <legacy/x86/platform_session/connection.h>
#include <platform_device/client.h> #include <legacy/x86/platform_device/client.h>
#include <io_mem_session/connection.h> #include <io_mem_session/connection.h>
#include <base/attached_dataspace.h> #include <base/attached_dataspace.h>
#include <util/retry.h> #include <util/retry.h>

View File

@ -49,6 +49,7 @@
</start> </start>
<start name="platform_drv" caps="210" managing_system="yes"> <start name="platform_drv" caps="210" managing_system="yes">
<binary name="legacy_pc_platform_drv"/>
<resource name="RAM" quantum="3M"/> <resource name="RAM" quantum="3M"/>
<provides> <provides>
<service name="Platform"/> <service name="Platform"/>

View File

@ -13,7 +13,7 @@
<service name="Uplink"/> <service name="Uplink"/>
</parent-provides> </parent-provides>
<start name="rpi_new_platform_drv" caps="200"> <start name="rpi_platform_drv" caps="200">
<resource name="RAM" quantum="2M"/> <resource name="RAM" quantum="2M"/>
<provides> <service name="Platform"/> </provides> <provides> <service name="Platform"/> </provides>
<config> <config>
@ -53,7 +53,7 @@
<service name="CPU"> <parent/> </service> <service name="CPU"> <parent/> </service>
<service name="LOG"> <parent/> </service> <service name="LOG"> <parent/> </service>
<service name="Timer"> <parent/> </service> <service name="Timer"> <parent/> </service>
<service name="Platform"> <child name="rpi_new_platform_drv"/> </service> <service name="Platform"> <child name="rpi_platform_drv"/> </service>
</route> </route>
</start> </start>

View File

@ -94,6 +94,7 @@
</start> </start>
<start name="platform_drv" caps="400" managing_system="yes"> <start name="platform_drv" caps="400" managing_system="yes">
<binary name="legacy_pc_platform_drv"/>
<resource name="RAM" quantum="4M"/> <resource name="RAM" quantum="4M"/>
<provides> <provides>
<service name="Platform"/> <service name="Platform"/>

View File

@ -16,7 +16,7 @@
#include <base/log.h> #include <base/log.h>
#include <base/allocator.h> #include <base/allocator.h>
#include <io_mem_session/connection.h> #include <io_mem_session/connection.h>
#include <platform_session/connection.h> #include <legacy/x86/platform_session/connection.h>
/* local includes */ /* local includes */
#include "framebuffer.h" #include "framebuffer.h"

View File

@ -33,8 +33,8 @@ static const bool verbose = false;
** PCI virtualization ** ** PCI virtualization **
************************/ ************************/
#include <platform_session/connection.h> #include <legacy/x86/platform_session/connection.h>
#include <platform_device/client.h> #include <legacy/x86/platform_device/client.h>
enum { enum {
PCI_ADDR_REG = 0xcf8, PCI_ADDR_REG = 0xcf8,

View File

@ -14,7 +14,7 @@
/* Genode includes */ /* Genode includes */
#include <util/reconstructible.h> #include <util/reconstructible.h>
#include <acpica/acpica.h> #include <acpica/acpica.h>
#include <platform_session/client.h> #include <legacy/x86/platform_session/client.h>
#include "env.h" #include "env.h"

View File

@ -16,7 +16,7 @@
#include <base/env.h> #include <base/env.h>
#include <base/allocator.h> #include <base/allocator.h>
#include <platform_session/client.h> #include <legacy/x86/platform_session/client.h>
namespace Acpica { namespace Acpica {
Genode::Env & env(); Genode::Env & env();

View File

@ -11,12 +11,12 @@
* under the terms of the GNU Affero General Public License version 3. * under the terms of the GNU Affero General Public License version 3.
*/ */
#ifndef _INCLUDE__PLATFORM_SESSION__CLIENT_H_ #ifndef _INCLUDE__LEGACY__IMX53__PLATFORM_SESSION__CLIENT_H_
#define _INCLUDE__PLATFORM_SESSION__CLIENT_H_ #define _INCLUDE__LEGACY__IMX53__PLATFORM_SESSION__CLIENT_H_
#include <base/capability.h> #include <base/capability.h>
#include <base/rpc_client.h> #include <base/rpc_client.h>
#include <platform_session/platform_session.h> #include <legacy/imx53/platform_session/platform_session.h>
namespace Platform { struct Client; } namespace Platform { struct Client; }
@ -33,4 +33,4 @@ struct Platform::Client : Genode::Rpc_client<Session>
Board_revision revision() override { return call<Rpc_revision>(); } Board_revision revision() override { return call<Rpc_revision>(); }
}; };
#endif /* _INCLUDE__PLATFORM_SESSION__CLIENT_H_ */ #endif /* _INCLUDE__LEGACY__IMX53__PLATFORM_SESSION__CLIENT_H_ */

View File

@ -11,10 +11,10 @@
* under the terms of the GNU Affero General Public License version 3. * under the terms of the GNU Affero General Public License version 3.
*/ */
#ifndef _INCLUDE__SPEC__RPI__PLATFORM_SESSION__CONNECTION_H_ #ifndef _INCLUDE__LEGACY__IMX53__PLATFORM_SESSION__CONNECTION_H_
#define _INCLUDE__SPEC__RPI__PLATFORM_SESSION__CONNECTION_H_ #define _INCLUDE__LEGACY__IMX53__PLATFORM_SESSION__CONNECTION_H_
#include <platform_session/client.h> #include <legacy/imx53/platform_session/client.h>
#include <util/arg_string.h> #include <util/arg_string.h>
#include <base/connection.h> #include <base/connection.h>
@ -32,4 +32,4 @@ struct Platform::Connection : Genode::Connection<Session>, Client
Client(cap()) { } Client(cap()) { }
}; };
#endif /* _INCLUDE__SPEC__RPI__PLATFORM_SESSION__CONNECTION_H_ */ #endif /* _INCLUDE__LEGACY__IMX53__PLATFORM_SESSION__CONNECTION_H_ */

View File

@ -11,8 +11,8 @@
* under the terms of the GNU Affero General Public License version 3. * under the terms of the GNU Affero General Public License version 3.
*/ */
#ifndef _INCLUDE__PLATFORM_SESSION__PLATFORM_SESSION_H_ #ifndef _INCLUDE__LEGACY__IMX53__PLATFORM_SESSION__PLATFORM_SESSION_H_
#define _INCLUDE__PLATFORM_SESSION__PLATFORM_SESSION_H_ #define _INCLUDE__LEGACY__IMX53__PLATFORM_SESSION__PLATFORM_SESSION_H_
#include <base/capability.h> #include <base/capability.h>
#include <base/rpc.h> #include <base/rpc.h>
@ -64,4 +64,4 @@ struct Platform::Session : Genode::Session
Rpc_revision); Rpc_revision);
}; };
#endif /* _INCLUDE__PLATFORM_SESSION__PLATFORM_SESSION_H_ */ #endif /* _INCLUDE__LEGACY__IMX53__PLATFORM_SESSION__PLATFORM_SESSION_H_ */

View File

@ -11,8 +11,8 @@
* under the terms of the GNU Affero General Public License version 3. * under the terms of the GNU Affero General Public License version 3.
*/ */
#ifndef _PLATFORM__FRAMEBUFFER_INFO_H_ #ifndef _INCLUDE__LEGACY__RPI__PLATFORM__FRAMEBUFFER_INFO_H_
#define _PLATFORM__FRAMEBUFFER_INFO_H_ #define _INCLUDE__LEGACY__RPI__PLATFORM__FRAMEBUFFER_INFO_H_
#include <base/stdint.h> #include <base/stdint.h>
@ -56,4 +56,4 @@ struct Platform::Framebuffer_info
{ } { }
}; };
#endif /* _PLATFORM__FRAMEBUFFER_INFO_H_ */ #endif /* _INCLUDE__LEGACY__RPI__PLATFORM__FRAMEBUFFER_INFO_H_ */

View File

@ -11,8 +11,8 @@
* under the terms of the GNU Affero General Public License version 3. * under the terms of the GNU Affero General Public License version 3.
*/ */
#ifndef _PLATFORM__PROPERTY_MESSAGE_H_ #ifndef _INCLUDE__LEGACY__RPI__PLATFORM__PROPERTY_MESSAGE_H_
#define _PLATFORM__PROPERTY_MESSAGE_H_ #define _INCLUDE__LEGACY__RPI__PLATFORM__PROPERTY_MESSAGE_H_
/* Genode includes */ /* Genode includes */
#include <util/misc_math.h> #include <util/misc_math.h>
@ -206,4 +206,4 @@ struct Platform::Property_message
} }
}; };
#endif /* _PLATFORM__PROPERTY_MESSAGE_H_ */ #endif /* _INCLUDE__LEGACY__RPI__PLATFORM__PROPERTY_MESSAGE_H_ */

View File

@ -11,12 +11,12 @@
* under the terms of the GNU Affero General Public License version 3. * under the terms of the GNU Affero General Public License version 3.
*/ */
#ifndef _INCLUDE__PLATFORM_SESSION__CLIENT_H_ #ifndef _INCLUDE__LEGACY__RPI__PLATFORM_SESSION__CLIENT_H_
#define _INCLUDE__PLATFORM_SESSION__CLIENT_H_ #define _INCLUDE__LEGACY__RPI__PLATFORM_SESSION__CLIENT_H_
#include <base/capability.h> #include <base/capability.h>
#include <base/rpc_client.h> #include <base/rpc_client.h>
#include <platform_session/platform_session.h> #include <legacy/rpi/platform_session/platform_session.h>
namespace Platform { struct Client; } namespace Platform { struct Client; }
@ -38,4 +38,4 @@ struct Platform::Client : Genode::Rpc_client<Platform::Session>
return call<Rpc_get_clock_rate>(clock); } return call<Rpc_get_clock_rate>(clock); }
}; };
#endif /* _INCLUDE__PLATFORM_SESSION__CLIENT_H_ */ #endif /* _INCLUDE__LEGACY__RPI__PLATFORM_SESSION__CLIENT_H_ */

View File

@ -11,10 +11,10 @@
* under the terms of the GNU Affero General Public License version 3. * under the terms of the GNU Affero General Public License version 3.
*/ */
#ifndef _INCLUDE__SPEC__IMX53__PLATFORM_SESSION__CONNECTION_H_ #ifndef _INCLUDE__LEGACY__RPI__PLATFORM_SESSION__CONNECTION_H_
#define _INCLUDE__SPEC__IMX53__PLATFORM_SESSION__CONNECTION_H_ #define _INCLUDE__LEGACY__RPI__PLATFORM_SESSION__CONNECTION_H_
#include <platform_session/client.h> #include <legacy/rpi/platform_session/client.h>
#include <util/arg_string.h> #include <util/arg_string.h>
#include <base/connection.h> #include <base/connection.h>
@ -32,4 +32,4 @@ struct Platform::Connection : Genode::Connection<Session>, Client
Client(cap()) { } Client(cap()) { }
}; };
#endif /* _INCLUDE__SPEC__IMX53__PLATFORM_SESSION__CONNECTION_H_ */ #endif /* _INCLUDE__LEGACY__RPI__PLATFORM_SESSION__CONNECTION_H_ */

View File

@ -11,13 +11,13 @@
* under the terms of the GNU Affero General Public License version 3. * under the terms of the GNU Affero General Public License version 3.
*/ */
#ifndef _INCLUDE__PLATFORM_SESSION__PLATFORM_SESSION_H_ #ifndef _INCLUDE__LEGACY__RPI__PLATFORM_SESSION__PLATFORM_SESSION_H_
#define _INCLUDE__PLATFORM_SESSION__PLATFORM_SESSION_H_ #define _INCLUDE__LEGACY__RPI__PLATFORM_SESSION__PLATFORM_SESSION_H_
#include <base/capability.h> #include <base/capability.h>
#include <base/rpc.h> #include <base/rpc.h>
#include <dataspace/capability.h> #include <dataspace/capability.h>
#include <spec/rpi/platform/framebuffer_info.h> #include <legacy/rpi/platform/framebuffer_info.h>
namespace Platform { namespace Platform {
using namespace Genode; using namespace Genode;
@ -86,4 +86,4 @@ struct Platform::Session : Genode::Session
Rpc_get_power_state, Rpc_get_clock_rate); Rpc_get_power_state, Rpc_get_clock_rate);
}; };
#endif /* _INCLUDE__PLATFORM_SESSION__PLATFORM_SESSION_H_ */ #endif /* _INCLUDE__LEGACY__RPI__PLATFORM_SESSION__PLATFORM_SESSION_H_ */

View File

@ -14,6 +14,6 @@
#pragma once #pragma once
#include <base/capability.h> #include <base/capability.h>
#include <platform_device/platform_device.h> #include <legacy/x86/platform_device/platform_device.h>
namespace Platform { typedef Genode::Capability<Device> Device_capability; } namespace Platform { typedef Genode::Capability<Device> Device_capability; }

View File

@ -11,11 +11,11 @@
* under the terms of the GNU Affero General Public License version 3. * under the terms of the GNU Affero General Public License version 3.
*/ */
#ifndef _INCLUDE__SPEC__X86__PLATFORM_DEVICE__CLIENT_H_ #ifndef _INCLUDE__LEGACY__X86__PLATFORM_DEVICE__CLIENT_H_
#define _INCLUDE__SPEC__X86__PLATFORM_DEVICE__CLIENT_H_ #define _INCLUDE__LEGACY__X86__PLATFORM_DEVICE__CLIENT_H_
#include <platform_session/platform_session.h> #include <legacy/x86/platform_session/platform_session.h>
#include <platform_device/platform_device.h> #include <legacy/x86/platform_device/platform_device.h>
#include <base/rpc_client.h> #include <base/rpc_client.h>
#include <io_mem_session/io_mem_session.h> #include <io_mem_session/io_mem_session.h>
@ -61,4 +61,4 @@ struct Platform::Device_client : public Rpc_client<Device>
return call<Rpc_io_mem>(id, cache, offset, size); } return call<Rpc_io_mem>(id, cache, offset, size); }
}; };
#endif /* _INCLUDE__SPEC__X86__PLATFORM_DEVICE__CLIENT_H_ */ #endif /* _INCLUDE__LEGACY__X86__PLATFORM_DEVICE__CLIENT_H_ */

View File

@ -11,8 +11,8 @@
* under the terms of the GNU Affero General Public License version 3. * under the terms of the GNU Affero General Public License version 3.
*/ */
#ifndef _INCLUDE__PLATFORM_DEVICE__DEVICE_H_ #ifndef _INCLUDE__LEGACY__X86__PLATFORM_DEVICE__DEVICE_H_
#define _INCLUDE__PLATFORM_DEVICE__DEVICE_H_ #define _INCLUDE__LEGACY__X86__PLATFORM_DEVICE__DEVICE_H_
#include <util/interface.h> #include <util/interface.h>
#include <base/cache.h> #include <base/cache.h>
@ -35,4 +35,4 @@ struct Platform::Abstract_device : Genode::Interface
Genode::addr_t, Genode::size_t) = 0; Genode::addr_t, Genode::size_t) = 0;
}; };
#endif /* _INCLUDE__PLATFORM_DEVICE__DEVICE_H_ */ #endif /* _INCLUDE__LEGACY__X86__PLATFORM_DEVICE__DEVICE_H_ */

View File

@ -11,8 +11,8 @@
* under the terms of the GNU Affero General Public License version 3. * under the terms of the GNU Affero General Public License version 3.
*/ */
#ifndef _INCLUDE__SPEC__X86__PLATFORM_DEVICE__PLATFORM_DEVICE_H_ #ifndef _INCLUDE__LEGACY__X86__PLATFORM_DEVICE__PLATFORM_DEVICE_H_
#define _INCLUDE__SPEC__X86__PLATFORM_DEVICE__PLATFORM_DEVICE_H_ #define _INCLUDE__LEGACY__X86__PLATFORM_DEVICE__PLATFORM_DEVICE_H_
/* Genode includes */ /* Genode includes */
#include <base/rpc.h> #include <base/rpc.h>
@ -24,7 +24,7 @@
#include <irq_session/capability.h> #include <irq_session/capability.h>
/* os includes */ /* os includes */
#include <platform_device/device.h> #include <legacy/x86/platform_device/device.h>
namespace Platform { namespace Platform {
@ -258,4 +258,4 @@ struct Platform::Device : Platform::Abstract_device
Rpc_config_write, Rpc_irq, Rpc_io_port, Rpc_io_mem); Rpc_config_write, Rpc_irq, Rpc_io_port, Rpc_io_mem);
}; };
#endif /* _INCLUDE__SPEC__X86__PLATFORM_DEVICE__PLATFORM_DEVICE_H_ */ #endif /* _INCLUDE__LEGACY__X86__PLATFORM_DEVICE__PLATFORM_DEVICE_H_ */

View File

@ -0,0 +1,22 @@
/*
* \brief Platform session capability type
* \author Stefan Kalkowski
* \date 2013-04-29
*/
/*
* Copyright (C) 2013-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__LEGACY__X86__PLATFORM_SESSION__CAPABILITY_H_
#define _INCLUDE__LEGACY__X86__PLATFORM_SESSION__CAPABILITY_H_
#include <base/capability.h>
#include <legacy/x86/platform_session/platform_session.h>
namespace Platform { typedef Genode::Capability<Session> Session_capability; }
#endif /* _INCLUDE__LEGACY__X86__PLATFORM_SESSION__CAPABILITY_H_ */

View File

@ -11,12 +11,12 @@
* under the terms of the GNU Affero General Public License version 3. * under the terms of the GNU Affero General Public License version 3.
*/ */
#ifndef _INCLUDE__SPEC__X86__PLATFORM_SESSION_H_ #ifndef _INCLUDE__LEGACY__X86__PLATFORM_SESSION_H_
#define _INCLUDE__SPEC__X86__PLATFORM_SESSION_H_ #define _INCLUDE__LEGACY__X86__PLATFORM_SESSION_H_
#include <base/rpc_client.h> #include <base/rpc_client.h>
#include <platform_device/client.h> #include <legacy/x86/platform_device/client.h>
#include <platform_session/capability.h> #include <legacy/x86/platform_session/capability.h>
namespace Platform { struct Client; } namespace Platform { struct Client; }
@ -50,4 +50,4 @@ struct Platform::Client : public Rpc_client<Session>
return call<Rpc_device>(device); } return call<Rpc_device>(device); }
}; };
#endif /* _INCLUDE__SPEC__X86__PLATFORM_SESSION_H_ */ #endif /* _INCLUDE__LEGACY__X86__PLATFORM_SESSION_H_ */

View File

@ -11,12 +11,12 @@
* under the terms of the GNU Affero General Public License version 3. * under the terms of the GNU Affero General Public License version 3.
*/ */
#ifndef _INCLUDE__SPEC__X86__PLATFORM_SESSION__CONNECTION_H_ #ifndef _INCLUDE__LEGACY__X86__PLATFORM_SESSION__CONNECTION_H_
#define _INCLUDE__SPEC__X86__PLATFORM_SESSION__CONNECTION_H_ #define _INCLUDE__LEGACY__X86__PLATFORM_SESSION__CONNECTION_H_
#include <util/retry.h> #include <util/retry.h>
#include <base/connection.h> #include <base/connection.h>
#include <platform_session/client.h> #include <legacy/x86/platform_session/client.h>
namespace Platform { struct Connection; } namespace Platform { struct Connection; }
@ -48,4 +48,4 @@ struct Platform::Connection : Genode::Connection<Session>, Client
} }
}; };
#endif /* _INCLUDE__SPEC__X86__PLATFORM_SESSION__CONNECTION_H_ */ #endif /* _INCLUDE__LEGACY__X86__PLATFORM_SESSION__CONNECTION_H_ */

View File

@ -11,8 +11,8 @@
* under the terms of the GNU Affero General Public License version 3. * under the terms of the GNU Affero General Public License version 3.
*/ */
#ifndef _INCLUDE__SPEC__X86__PLATFORM_SESSION__PLATFORM_SESSION_H_ #ifndef _INCLUDE__LEGACY__X86__PLATFORM_SESSION__PLATFORM_SESSION_H_
#define _INCLUDE__SPEC__X86__PLATFORM_SESSION__PLATFORM_SESSION_H_ #define _INCLUDE__LEGACY__X86__PLATFORM_SESSION__PLATFORM_SESSION_H_
/* Genode includes */ /* Genode includes */
#include <session/session.h> #include <session/session.h>
@ -20,8 +20,8 @@
#include <base/cache.h> #include <base/cache.h>
/* os includes */ /* os includes */
#include <platform_device/platform_device.h> #include <legacy/x86/platform_device/platform_device.h>
#include <platform_device/capability.h> #include <legacy/x86/platform_device/capability.h>
namespace Platform { struct Session; } namespace Platform { struct Session; }
@ -109,4 +109,4 @@ struct Platform::Session : Genode::Session
Rpc_free_dma_buffer, Rpc_dma_addr, Rpc_device); Rpc_free_dma_buffer, Rpc_dma_addr, Rpc_device);
}; };
#endif /* _INCLUDE__SPEC__X86__PLATFORM_SESSION__PLATFORM_SESSION_H_ */ #endif /* _INCLUDE__LEGACY__X86__PLATFORM_SESSION__PLATFORM_SESSION_H_ */

View File

@ -11,8 +11,8 @@
* under the terms of the GNU Affero General Public License version 3. * under the terms of the GNU Affero General Public License version 3.
*/ */
#ifndef _INCLUDE__SPEC__ARM__PLATFORM_SESSION__CLIENT_H_ #ifndef _INCLUDE__PLATFORM_SESSION__CLIENT_H_
#define _INCLUDE__SPEC__ARM__PLATFORM_SESSION__CLIENT_H_ #define _INCLUDE__PLATFORM_SESSION__CLIENT_H_
#include <base/rpc_client.h> #include <base/rpc_client.h>
#include <platform_session/capability.h> #include <platform_session/capability.h>
@ -47,4 +47,4 @@ struct Platform::Client : Genode::Rpc_client<Session>
return call<Rpc_dma_addr>(cap); } return call<Rpc_dma_addr>(cap); }
}; };
#endif /* _INCLUDE__SPEC__ARM__PLATFORM_SESSION__CLIENT_H_ */ #endif /* _INCLUDE__PLATFORM_SESSION__CLIENT_H_ */

View File

@ -11,8 +11,8 @@
* under the terms of the GNU Affero General Public License version 3. * under the terms of the GNU Affero General Public License version 3.
*/ */
#ifndef _INCLUDE__SPEC__ARM__PLATFORM_SESSION__CONNECTION_H_ #ifndef _INCLUDE__PLATFORM_SESSION__CONNECTION_H_
#define _INCLUDE__SPEC__ARM__PLATFORM_SESSION__CONNECTION_H_ #define _INCLUDE__PLATFORM_SESSION__CONNECTION_H_
#include <base/attached_dataspace.h> #include <base/attached_dataspace.h>
#include <base/connection.h> #include <base/connection.h>
@ -129,4 +129,4 @@ class Platform::Connection : public Genode::Connection<Session>,
} }
}; };
#endif /* _INCLUDE__SPEC__ARM__PLATFORM_SESSION__CONNECTION_H_ */ #endif /* _INCLUDE__PLATFORM_SESSION__CONNECTION_H_ */

View File

@ -1,5 +1,5 @@
/* /*
* \brief ARM-device interface * \brief Platform-device interface
* \author Stefan Kalkowski * \author Stefan Kalkowski
* \author Norman Feske * \author Norman Feske
* \date 2020-04-15 * \date 2020-04-15
@ -12,8 +12,8 @@
* under the terms of the GNU Affero General Public License version 3. * under the terms of the GNU Affero General Public License version 3.
*/ */
#ifndef _INCLUDE__SPEC__ARM__PLATFORM_SESSION__DEVICE_H_ #ifndef _INCLUDE__PLATFORM_SESSION__DEVICE_H_
#define _INCLUDE__SPEC__ARM__PLATFORM_SESSION__DEVICE_H_ #define _INCLUDE__PLATFORM_SESSION__DEVICE_H_
#include <util/mmio.h> #include <util/mmio.h>
#include <util/string.h> #include <util/string.h>
@ -167,4 +167,4 @@ class Platform::Device::Irq : Noncopyable
} }
}; };
#endif /* _INCLUDE__SPEC__ARM__PLATFORM_SESSION__DEVICE_H_ */ #endif /* _INCLUDE__PLATFORM_SESSION__DEVICE_H_ */

View File

@ -11,8 +11,8 @@
* under the terms of the GNU Affero General Public License version 3. * under the terms of the GNU Affero General Public License version 3.
*/ */
#ifndef _INCLUDE__SPEC__ARM__PLATFORM_SESSION__PLATFORM_SESSION_H_ #ifndef _INCLUDE__PLATFORM_SESSION__PLATFORM_SESSION_H_
#define _INCLUDE__SPEC__ARM__PLATFORM_SESSION__PLATFORM_SESSION_H_ #define _INCLUDE__PLATFORM_SESSION__PLATFORM_SESSION_H_
#include <base/quota_guard.h> #include <base/quota_guard.h>
#include <base/rpc_args.h> #include <base/rpc_args.h>
@ -124,4 +124,4 @@ struct Platform::Session : Genode::Session
Rpc_dma_addr); Rpc_dma_addr);
}; };
#endif /* _INCLUDE__SPEC__ARM__PLATFORM_SESSION__PLATFORM_SESSION_H_ */ #endif /* _INCLUDE__PLATFORM_SESSION__PLATFORM_SESSION_H_ */

View File

@ -1 +0,0 @@
#include <spec/arm/platform_session/client.h>

View File

@ -1 +0,0 @@
#include <spec/arm/platform_session/connection.h>

View File

@ -1 +0,0 @@
#include <spec/arm/platform_session/device.h>

View File

@ -1 +0,0 @@
#include <spec/arm/platform_session/platform_session.h>

View File

@ -16,7 +16,7 @@
#include <os/attached_mmio.h> #include <os/attached_mmio.h>
#include <irq_session/client.h> #include <irq_session/client.h>
#include <platform_device/client.h> #include <legacy/x86/platform_device/client.h>
#include <virtio/queue.h> #include <virtio/queue.h>
namespace Virtio { namespace Virtio {

View File

@ -1,12 +1,9 @@
INCLUDE_SUB_DIRS := platform_session \ INCLUDE_SUB_DIRS := platform_session \
platform_device \ legacy/imx53/platform_session \
spec/arm_64/platform_session \ legacy/rpi/platform \
spec/arm/platform_session \ legacy/rpi/platform_session \
spec/imx53/platform_session \ legacy/x86/platform_session \
spec/rpi/platform \ legacy/x86/platform_device
spec/rpi/platform_session \
spec/x86/platform_session \
spec/x86/platform_device
INCLUDE_DIRS := $(addprefix include/,$(INCLUDE_SUB_DIRS)) INCLUDE_DIRS := $(addprefix include/,$(INCLUDE_SUB_DIRS))

View File

@ -19,7 +19,7 @@
<default-policy> <child name="dummy_input_drv"/> </default-policy> </service> <default-policy> <child name="dummy_input_drv"/> </default-policy> </service>
<start name="platform_drv" caps="200" managing_system="yes"> <start name="platform_drv" caps="200" managing_system="yes">
<binary name="imx53_platform_drv"/> <binary name="legacy_imx53_platform_drv"/>
<resource name="RAM" quantum="3M"/> <resource name="RAM" quantum="3M"/>
<provides> <provides>
<service name="Platform"/> <service name="Platform"/>

View File

@ -48,6 +48,7 @@
</start> </start>
<start name="platform_drv" caps="200" managing_system="yes"> <start name="platform_drv" caps="200" managing_system="yes">
<binary name="legacy_pc_platform_drv"/>
<resource name="RAM" quantum="3M"/> <resource name="RAM" quantum="3M"/>
<provides> <provides>
<service name="Platform"/> <service name="Platform"/>

View File

@ -14,8 +14,8 @@
*/ */
#include <irq_session/connection.h> #include <irq_session/connection.h>
#include <platform_session/connection.h> #include <legacy/x86/platform_session/connection.h>
#include <platform_device/client.h> #include <legacy/x86/platform_device/client.h>
#include <util/reconstructible.h> #include <util/reconstructible.h>
namespace Ahci { namespace Ahci {

View File

@ -19,7 +19,7 @@
#include <drivers/defs/imx53.h> #include <drivers/defs/imx53.h>
#include <base/attached_io_mem_dataspace.h> #include <base/attached_io_mem_dataspace.h>
#include <io_mem_session/connection.h> #include <io_mem_session/connection.h>
#include <platform_session/connection.h> #include <legacy/imx53/platform_session/connection.h>
#include <util/mmio.h> #include <util/mmio.h>
#include <capture_session/connection.h> #include <capture_session/connection.h>

View File

@ -18,7 +18,7 @@
#include <base/component.h> #include <base/component.h>
#include <util/reconstructible.h> #include <util/reconstructible.h>
#include <capture_session/connection.h> #include <capture_session/connection.h>
#include <platform_session/connection.h> #include <legacy/rpi/platform_session/connection.h>
#include <blit/blit.h> #include <blit/blit.h>
#include <timer_session/connection.h> #include <timer_session/connection.h>

View File

@ -26,8 +26,8 @@
#include <gpu/info_intel.h> #include <gpu/info_intel.h>
#include <io_mem_session/connection.h> #include <io_mem_session/connection.h>
#include <irq_session/connection.h> #include <irq_session/connection.h>
#include <platform_device/client.h> #include <legacy/x86/platform_device/client.h>
#include <platform_session/connection.h> #include <legacy/x86/platform_session/connection.h>
#include <root/component.h> #include <root/component.h>
#include <timer_session/connection.h> #include <timer_session/connection.h>
#include <util/fifo.h> #include <util/fifo.h>

View File

@ -11,7 +11,7 @@
* under the terms of the GNU Affero General Public License version 3. * under the terms of the GNU Affero General Public License version 3.
*/ */
#include <platform_session/platform_session.h> #include <legacy/x86/platform_session/platform_session.h>
namespace Platform { namespace Platform {
class Device_component; class Device_component;

View File

@ -14,7 +14,7 @@
/* Genode includes */ /* Genode includes */
#include <base/component.h> #include <base/component.h>
#include <base/heap.h> #include <base/heap.h>
#include <platform_session/connection.h> #include <legacy/x86/platform_session/connection.h>
#include <virtio/pci_device.h> #include <virtio/pci_device.h>
/* NIC driver includes */ /* NIC driver includes */

View File

@ -16,8 +16,8 @@
/* Genode includes */ /* Genode includes */
#include <irq_session/connection.h> #include <irq_session/connection.h>
#include <platform_device/client.h> #include <legacy/x86/platform_device/client.h>
#include <platform_session/connection.h> #include <legacy/x86/platform_session/connection.h>
namespace Nvme { namespace Nvme {

View File

@ -15,7 +15,7 @@
#include <base/heap.h> #include <base/heap.h>
#include <base/component.h> #include <base/component.h>
#include <root/component.h> #include <root/component.h>
#include <platform_session/platform_session.h> #include <legacy/imx53/platform_session/platform_session.h>
#include <ccm.h> #include <ccm.h>
#include <iim.h> #include <iim.h>

View File

@ -1,4 +1,4 @@
TARGET = imx53_platform_drv TARGET = legacy_imx53_platform_drv
REQUIRES = arm_v7 REQUIRES = arm_v7
SRC_CC = main.cc SRC_CC = main.cc
INC_DIR += ${PRG_DIR} $(call select_from_repositories,include/spec/imx53) INC_DIR += ${PRG_DIR} $(call select_from_repositories,include/spec/imx53)

View File

@ -20,7 +20,7 @@
/* board-specific includes */ /* board-specific includes */
#include <drivers/defs/rpi.h> #include <drivers/defs/rpi.h>
#include <platform/framebuffer_info.h> #include <legacy/rpi/platform/framebuffer_info.h>
namespace Platform { struct Framebuffer_message; } namespace Platform { struct Framebuffer_message; }

View File

@ -18,8 +18,8 @@
#include <root/component.h> #include <root/component.h>
/* platform includes */ /* platform includes */
#include <platform_session/platform_session.h> #include <legacy/rpi/platform_session/platform_session.h>
#include <platform/property_message.h> #include <legacy/rpi/platform/property_message.h>
/* local includes */ /* local includes */
#include <mbox.h> #include <mbox.h>

View File

@ -1,4 +1,4 @@
TARGET = rpi_platform_drv TARGET = legacy_rpi_platform_drv
REQUIRES = arm_v6 REQUIRES = arm_v6
SRC_CC = main.cc SRC_CC = main.cc
INC_DIR += ${PRG_DIR} $(call select_from_repositories,include/spec/rpi) INC_DIR += ${PRG_DIR} $(call select_from_repositories,include/spec/rpi)

View File

@ -22,7 +22,7 @@
#include <io_mem_session/connection.h> #include <io_mem_session/connection.h>
/* os */ /* os */
#include <platform_session/platform_session.h> #include <legacy/x86/platform_session/platform_session.h>
namespace Platform { class Device_pd; } namespace Platform { class Device_pd; }

View File

@ -16,7 +16,7 @@
#include <base/attached_io_mem_dataspace.h> #include <base/attached_io_mem_dataspace.h>
#include <base/attached_rom_dataspace.h> #include <base/attached_rom_dataspace.h>
#include <platform_device/platform_device.h> #include <legacy/x86/platform_device/platform_device.h>
#include <util/bit_array.h> #include <util/bit_array.h>
#include <util/mmio.h> #include <util/mmio.h>

View File

@ -23,7 +23,7 @@
#include <util/construct_at.h> #include <util/construct_at.h>
/* os */ /* os */
#include <platform_device/platform_device.h> #include <legacy/x86/platform_device/platform_device.h>
/* local */ /* local */
#include "pci_device_config.h" #include "pci_device_config.h"

View File

@ -15,7 +15,7 @@
#define _X86__PCI_DEVICE_CONFIG_H_ #define _X86__PCI_DEVICE_CONFIG_H_
#include <base/output.h> #include <base/output.h>
#include <platform_device/platform_device.h> #include <legacy/x86/platform_device/platform_device.h>
#include <util/register.h> #include <util/register.h>
#include "pci_config_access.h" #include "pci_config_access.h"

View File

@ -30,7 +30,7 @@
#include <io_mem_session/connection.h> #include <io_mem_session/connection.h>
#include <os/reporter.h> #include <os/reporter.h>
#include <os/session_policy.h> #include <os/session_policy.h>
#include <platform_session/platform_session.h> #include <legacy/x86/platform_session/platform_session.h>
/* local */ /* local */
#include "device_pd.h" #include "device_pd.h"

View File

@ -1,4 +1,4 @@
TARGET = platform_drv TARGET = legacy_pc_platform_drv
REQUIRES = x86 REQUIRES = x86
SRC_CC = main.cc irq.cc pci_device.cc nonpci_devices.cc session.cc SRC_CC = main.cc irq.cc pci_device.cc nonpci_devices.cc session.cc
SRC_CC += device_pd.cc SRC_CC += device_pd.cc

View File

@ -1,61 +0,0 @@
/*
* \brief Marshalling of mbox messages for framebuffer channel
* \author Norman Feske
* \date 2013-09-15
*/
/*
* Copyright (C) 2013-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 _FRAMEBUFFER_MESSAGE_H_
#define _FRAMEBUFFER_MESSAGE_H_
/* Genode includes */
#include <util/misc_math.h>
#include <base/log.h>
/* board-specific includes */
#include <drivers/defs/rpi.h>
#include <platform/framebuffer_info.h>
namespace Platform { struct Framebuffer_message; }
/**
* Mailbox message buffer for the framebuffer channel
*/
struct Platform::Framebuffer_message : Framebuffer_info
{
Framebuffer_message(Framebuffer_info const &info) : Framebuffer_info(info) { }
void finalize() { }
static unsigned channel() { return 1; }
static Rpi::Videocore_cache_policy cache_policy() {
return Rpi::COHERENT;
}
void dump(char const *label)
{
using Genode::log;
log(label, " message:");
log(" phys_width: ", phys_width);
log(" phys_height: ", phys_height);
log(" virt_width: ", virt_width);
log(" virt_height: ", virt_height);
log(" pitch: ", pitch);
log(" depth: ", depth);
log(" x_offset: ", x_offset);
log(" y_offset: ", y_offset);
log(" addr: ", Genode::Hex(addr));
log(" size: ", Genode::Hex(size));
}
};
#endif /* _FRAMEBUFFER_MESSAGE_H_ */

View File

@ -1,4 +1,4 @@
TARGET = rpi_new_platform_drv TARGET = rpi_platform_drv
REQUIRES = arm_v6 REQUIRES = arm_v6
SRC_CC = device.cc SRC_CC = device.cc
SRC_CC += device_component.cc SRC_CC += device_component.cc
@ -6,8 +6,8 @@ SRC_CC += device_model_policy.cc
SRC_CC += main.cc SRC_CC += main.cc
SRC_CC += session_component.cc SRC_CC += session_component.cc
SRC_CC += root.cc SRC_CC += root.cc
INC_DIR = $(PRG_DIR) $(REP_DIR)/src/drivers/platform/spec/arm INC_DIR = $(PRG_DIR) $(REP_DIR)/src/drivers/platform
LIBS = base LIBS = base
vpath main.cc $(PRG_DIR) vpath main.cc $(PRG_DIR)
vpath %.cc $(REP_DIR)/src/drivers/platform/spec/arm vpath %.cc $(REP_DIR)/src/drivers/platform

View File

@ -1,7 +0,0 @@
TARGET = platform_drv
REQUIRES = arm_64
SRC_CC = device.cc device_component.cc device_model_policy.cc main.cc session_component.cc root.cc
INC_DIR = $(PRG_DIR)/../../spec/arm
LIBS = base
vpath %.cc $(PRG_DIR)/../../spec/arm

View File

@ -1,5 +1,4 @@
TARGET = platform_drv TARGET = platform_drv
REQUIRES = arm
SRC_CC = device.cc device_component.cc device_model_policy.cc main.cc session_component.cc root.cc SRC_CC = device.cc device_component.cc device_model_policy.cc main.cc session_component.cc root.cc
INC_DIR = $(PRG_DIR) INC_DIR = $(PRG_DIR)
LIBS = base LIBS = base

View File

@ -18,7 +18,7 @@
/* os includes */ /* os includes */
#include <event_session/connection.h> #include <event_session/connection.h>
#include <platform_session/connection.h> #include <legacy/x86/platform_session/connection.h>
#include <timer_session/connection.h> #include <timer_session/connection.h>
/* local includes */ /* local includes */

View File

@ -13,8 +13,8 @@
#include <base/component.h> #include <base/component.h>
#include <base/log.h> #include <base/log.h>
#include <platform_session/connection.h> #include <legacy/x86/platform_session/connection.h>
#include <platform_device/client.h> #include <legacy/x86/platform_device/client.h>
#include <util/retry.h> #include <util/retry.h>
using namespace Genode; using namespace Genode;