18c2ecf20Sopenharmony_ci/** 28c2ecf20Sopenharmony_ci * @file init.c 38c2ecf20Sopenharmony_ci * 48c2ecf20Sopenharmony_ci * @remark Copyright 2002 OProfile authors 58c2ecf20Sopenharmony_ci * @remark Read the file COPYING 68c2ecf20Sopenharmony_ci * 78c2ecf20Sopenharmony_ci * @author John Levon <levon@movementarian.org> 88c2ecf20Sopenharmony_ci */ 98c2ecf20Sopenharmony_ci 108c2ecf20Sopenharmony_ci#include <linux/kernel.h> 118c2ecf20Sopenharmony_ci#include <linux/oprofile.h> 128c2ecf20Sopenharmony_ci#include <linux/init.h> 138c2ecf20Sopenharmony_ci#include <linux/errno.h> 148c2ecf20Sopenharmony_ci 158c2ecf20Sopenharmony_ciextern int perfmon_init(struct oprofile_operations *ops); 168c2ecf20Sopenharmony_ciextern void perfmon_exit(void); 178c2ecf20Sopenharmony_ciextern void ia64_backtrace(struct pt_regs * const regs, unsigned int depth); 188c2ecf20Sopenharmony_ci 198c2ecf20Sopenharmony_ciint __init oprofile_arch_init(struct oprofile_operations *ops) 208c2ecf20Sopenharmony_ci{ 218c2ecf20Sopenharmony_ci ops->backtrace = ia64_backtrace; 228c2ecf20Sopenharmony_ci return -ENODEV; 238c2ecf20Sopenharmony_ci} 248c2ecf20Sopenharmony_ci 258c2ecf20Sopenharmony_ci 268c2ecf20Sopenharmony_civoid oprofile_arch_exit(void) 278c2ecf20Sopenharmony_ci{ 288c2ecf20Sopenharmony_ci} 29