]> rtime.felk.cvut.cz Git - l4.git/blob - l4/pkg/bootstrap/server/src/platform/omap.cc
523a5ae4b5be1a71f164a373f31c4daab951cab8
[l4.git] / l4 / pkg / bootstrap / server / src / platform / omap.cc
1 /*!
2  * \file   support_beagleboard.cc
3  * \brief  Support for the Beagleboard
4  *
5  * \date   2009-08
6  * \author Adam Lackorznynski <adam@os.inf.tu-dresden.de>
7  *
8  */
9 /*
10  * (c) 2009 Author(s)
11  *     economic rights: Technische Universität Dresden (Germany)
12  *
13  * This file is part of TUD:OS and distributed under the terms of the
14  * GNU General Public License 2.
15  * Please see the COPYING-GPL-2 file for details.
16  */
17
18 #include "support.h"
19 #include <l4/drivers/uart_omap35x.h>
20
21 namespace {
22 class Platform_arm_omap : public Platform_single_region_ram
23 {
24   bool probe() { return true; }
25
26   void init()
27   {
28     static L4::Uart_omap35x _uart;
29 #ifdef PLATFORM_TYPE_beagleboard
30     static L4::Io_register_block_mmio r(0x49020000);
31 #elif defined(PLATFORM_TYPE_omap3evm)
32     static L4::Io_register_block_mmio r(0x4806a000);
33 #elif defined(PLATFORM_TYPE_omap3_am33xx)
34     static L4::Io_register_block_mmio r(0x44e09000);
35 #elif defined(PLATFORM_TYPE_pandaboard)
36     static L4::Io_register_block_mmio r(0x48020000);
37 #else
38 #error Unknown platform
39 #endif
40     _uart.startup(&r);
41     set_stdio_uart(&_uart);
42   }
43 };
44 }
45
46 REGISTER_PLATFORM(Platform_arm_omap);