/* * \brief CPU driver for core * \author Martin stein * \date 2011-11-03 */ /* * Copyright (C) 2011-2012 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. */ #ifndef _CPU__CORTEX_A9_H_ #define _CPU__CORTEX_A9_H_ /* Genode includes */ #include /* core includes */ #include namespace Cortex_a9 { using namespace Genode; /** * CPU driver for core */ struct Cpu : Arm_v7::Cpu { enum { /* common */ CLK = Board_base::CORTEX_A9_CLOCK, /* CPU interface clock */ PERIPH_CLK = CLK, /* clock for CPU internal components */ /* interrupt controller */ PL390_DISTRIBUTOR_MMIO_BASE = Board_base::CORTEX_A9_PRIVATE_MEM_BASE + 0x1000, PL390_DISTRIBUTOR_MMIO_SIZE = 0x1000, PL390_CPU_MMIO_BASE = Board_base::CORTEX_A9_PRIVATE_MEM_BASE + 0x100, PL390_CPU_MMIO_SIZE = 0x100, /* timer */ PRIVATE_TIMER_MMIO_BASE = Board_base::CORTEX_A9_PRIVATE_MEM_BASE + 0x600, PRIVATE_TIMER_MMIO_SIZE = 0x10, PRIVATE_TIMER_IRQ = 29, PRIVATE_TIMER_CLK = PERIPH_CLK }; }; } #endif /* _CPU__CORTEX_A9_H_ */