genode/repos/base-hw/src/lib/hw/spec/arm/cortex_a9.h
Stefan Kalkowski 67ba7b89a7 hw: separate bootstrap and core strictly
* Introduce Hw namespace and library files under src/lib/hw
* Introduce Bootstrap namespace
* Move all initialization logic into Bootstrap namespace

Ref #2388
2017-05-31 13:15:52 +02:00

39 lines
941 B
C++

/*
* \brief Definitions common to all Cortex A9 CPUs
* \author Stefan Kalkowski
* \date 2017-02-23
*/
/*
* Copyright (C) 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 _SRC__LIB__HW__SPEC__ARM__CORTEX_A9_H_
#define _SRC__LIB__HW__SPEC__ARM__CORTEX_A9_H_
#include <base/stdint.h>
namespace Hw { template <Genode::addr_t> struct Cpu_memory_map; }
template <typename Genode::addr_t BASE>
struct Hw::Cpu_memory_map
{
enum {
SCU_MMIO_BASE = BASE,
IRQ_CONTROLLER_DISTR_BASE = BASE + 0x1000,
IRQ_CONTROLLER_DISTR_SIZE = 0x1000,
IRQ_CONTROLLER_CPU_BASE = BASE + 0x100,
IRQ_CONTROLLER_CPU_SIZE = 0x100,
PRIVATE_TIMER_MMIO_BASE = BASE + 0x600,
PRIVATE_TIMER_MMIO_SIZE = 0x10,
PRIVATE_TIMER_IRQ = 29,
};
};
#endif /* _SRC__LIB__HW__SPEC__ARM__CORTEX_A9_H_ */