fail: modifications for pandaboard support
Change-Id: I52d3c9b9862b206a000394c45126f0afdfee081f
This commit is contained in:
@ -39,6 +39,7 @@ OPTION( BUILD_BOCHS "Build Bochs Variant?" ON)
|
||||
OPTION( BUILD_GEM5 "Build gem5 Variant?" OFF)
|
||||
OPTION( BUILD_QEMU "Build QEMU Variant?" OFF)
|
||||
OPTION( BUILD_T32 "Build Lauterbach Trace32 Variant?" OFF)
|
||||
OPTION( BUILD_PANDA "Build Pandaboard ES + Flyswatter2 Variant?" OFF)
|
||||
|
||||
OPTION( BUILD_X86 "Build for x86 guests?" ON)
|
||||
OPTION( BUILD_ARM "Build for ARM guests?" OFF)
|
||||
@ -59,6 +60,8 @@ elseif(BUILD_T32)
|
||||
include_directories(debuggers/t32/include src/core)
|
||||
add_subdirectory(debuggers/t32)
|
||||
add_subdirectory(scripts/t32cmm)
|
||||
elseif(BUILD_PANDA)
|
||||
include_directories(debuggers/openocd/src debuggers/openocd/jimtcl src/core)
|
||||
endif(BUILD_BOCHS)
|
||||
|
||||
## Tell the linker where to find the Fail* libraries
|
||||
@ -79,4 +82,5 @@ include(bochs)
|
||||
include(gem5)
|
||||
include(qemu)
|
||||
include(t32)
|
||||
include(panda)
|
||||
|
||||
|
||||
@ -9,6 +9,7 @@ set(PROTOS
|
||||
FailControlMessage.proto
|
||||
DatabaseCampaignMessage.proto
|
||||
TracePlugin.proto
|
||||
HopChain.proto
|
||||
)
|
||||
|
||||
#### PROTOBUFS ####
|
||||
|
||||
@ -5,6 +5,7 @@
|
||||
#cmakedefine BUILD_GEM5
|
||||
#cmakedefine BUILD_QEMU
|
||||
#cmakedefine BUILD_T32
|
||||
#cmakedefine BUILD_PANDA
|
||||
#cmakedefine T32_MOCK_API
|
||||
|
||||
#cmakedefine BUILD_X86
|
||||
|
||||
@ -57,6 +57,26 @@ elseif(BUILD_T32)
|
||||
arm/ArmDisassembler.cc
|
||||
)
|
||||
endif(BUILD_ARM)
|
||||
elseif(BUILD_PANDA)
|
||||
include_directories(${PROJECT_SOURCE_DIR}/debuggers/openocd)
|
||||
set(SRCS
|
||||
CPU.cc
|
||||
CPUState.cc
|
||||
Listener.cc
|
||||
ListenerManager.cc
|
||||
SALConfig.cc
|
||||
Register.cc
|
||||
SimulatorController.cc
|
||||
panda/PandaController.cc
|
||||
panda/PandaArmCPU.cc
|
||||
panda/PandaListener.cc
|
||||
)
|
||||
if(BUILD_ARM)
|
||||
set(SRCS ${SRCS}
|
||||
panda/PandaArmCPU.cc
|
||||
arm/ArmArchitecture.cc #why is this necessary?
|
||||
)
|
||||
endif(BUILD_ARM)
|
||||
endif(BUILD_BOCHS)
|
||||
|
||||
if(BUILD_X86)
|
||||
|
||||
@ -18,6 +18,9 @@
|
||||
#else
|
||||
#error Active config currently not supported!
|
||||
#endif
|
||||
#elif defined BUILD_PANDA
|
||||
#include "panda/PandaConfig.hpp"
|
||||
#include "panda/PandaArmCPU.hpp"
|
||||
#else
|
||||
#error SAL Config Target not defined
|
||||
#endif
|
||||
|
||||
@ -5,7 +5,8 @@ namespace fail {
|
||||
// Flag initialization depends on the current selected simulator
|
||||
// (For now, the initialization values are all the same):
|
||||
#if defined BUILD_BOCHS || defined BUILD_GEM5 || \
|
||||
defined BUILD_T32 || defined BUILD_QEMU
|
||||
defined BUILD_T32 || defined BUILD_QEMU || \
|
||||
defined BUILD_PANDA
|
||||
const address_t ADDR_INV = static_cast<address_t> (0);
|
||||
const address_t ANY_ADDR = static_cast<address_t> (-1);
|
||||
const unsigned ANY_INSTR = static_cast<unsigned> (-1);
|
||||
|
||||
@ -14,6 +14,8 @@
|
||||
#include "qemu/QEMUConfig.hpp"
|
||||
#elif defined BUILD_T32
|
||||
#include "t32/T32Config.hpp"
|
||||
#elif defined BUILD_PANDA
|
||||
#include "panda/PandaConfig.hpp"
|
||||
#else
|
||||
#error SAL Config Target not defined
|
||||
#endif
|
||||
|
||||
@ -36,6 +36,14 @@ namespace fail {
|
||||
typedef T32Controller ConcreteSimulatorController; //!< concrete simulator (type)
|
||||
}
|
||||
|
||||
#elif defined BUILD_PANDA
|
||||
|
||||
#include "panda/PandaController.hpp"
|
||||
|
||||
namespace fail {
|
||||
typedef PandaController ConcreteSimulatorController; //!< concrete simulator (type)
|
||||
}
|
||||
|
||||
|
||||
#else
|
||||
#error SAL Instance not defined
|
||||
|
||||
Reference in New Issue
Block a user