/* * \brief Gpio driver for the OMAP4 * \author Ivan Loskutov * \author Stefan Kalkowski * \date 2012-06-23 */ /* * Copyright (C) 2012 Ksys Labs LLC * Copyright (C) 2012-2015 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. */ /* Genode includes */ #include #include #include #include #include #include /* local includes */ #include struct Main { Server::Entrypoint &ep; Genode::Sliced_heap sliced_heap; Omap4_driver &driver; Gpio::Root root; Main(Server::Entrypoint &ep) : ep(ep), sliced_heap(Genode::env()->ram_session(), Genode::env()->rm_session()), driver(Omap4_driver::factory(ep)), root(&ep.rpc_ep(), &sliced_heap, driver) { using namespace Genode; printf("--- omap4 gpio driver ---\n"); Gpio::process_config(driver); /* * Announce service */ env()->parent()->announce(ep.manage(root)); } }; /************ ** Server ** ************/ namespace Server { char const *name() { return "gpio_drv_ep"; } size_t stack_size() { return 1024*sizeof(long); } void construct(Entrypoint &ep) { static Main server(ep); } }