microblaze: Core oprofile configs and hooks

Microblaze uses timer interrupt mode. Microblaze don't have
any performance counter that's why we use just simple implementation.

Signed-off-by: John Williams <john.williams@petalogix.com>
Signed-off-by: Michal Simek <monstr@monstr.eu>
This commit is contained in:
John Williams 2009-11-24 20:27:54 +10:00 committed by Michal Simek
parent 33d9ff5985
commit 3540ce8238
4 changed files with 39 additions and 0 deletions

View File

@ -13,6 +13,8 @@ config MICROBLAZE
select HAVE_FTRACE_MCOUNT_RECORD select HAVE_FTRACE_MCOUNT_RECORD
select USB_ARCH_HAS_EHCI select USB_ARCH_HAS_EHCI
select ARCH_WANT_OPTIONAL_GPIOLIB select ARCH_WANT_OPTIONAL_GPIOLIB
select HAVE_OPROFILE
select TRACING_SUPPORT
config SWAP config SWAP
def_bool n def_bool n

View File

@ -51,6 +51,8 @@ core-y += arch/microblaze/kernel/
core-y += arch/microblaze/mm/ core-y += arch/microblaze/mm/
core-y += arch/microblaze/platform/ core-y += arch/microblaze/platform/
drivers-$(CONFIG_OPROFILE) += arch/microblaze/oprofile/
boot := arch/microblaze/boot boot := arch/microblaze/boot
# Are we making a simpleImage.<boardname> target? If so, crack out the boardname # Are we making a simpleImage.<boardname> target? If so, crack out the boardname

View File

@ -0,0 +1,13 @@
#
# arch/microblaze/oprofile/Makefile
#
obj-$(CONFIG_OPROFILE) += oprofile.o
DRIVER_OBJS := $(addprefix ../../../drivers/oprofile/, \
oprof.o cpu_buffer.o buffer_sync.o \
event_buffer.o oprofile_files.o \
oprofilefs.o oprofile_stats.o \
timer_int.o )
oprofile-y := $(DRIVER_OBJS) microblaze_oprofile.o

View File

@ -0,0 +1,22 @@
/*
* Microblaze oprofile code
*
* Copyright (C) 2009 Michal Simek <monstr@monstr.eu>
* Copyright (C) 2009 PetaLogix
*
* This file is subject to the terms and conditions of the GNU General Public
* License. See the file "COPYING" in the main directory of this archive
* for more details.
*/
#include <linux/oprofile.h>
#include <linux/init.h>
int __init oprofile_arch_init(struct oprofile_operations *ops)
{
return -1;
}
void oprofile_arch_exit(void)
{
}