[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-changelog] [xen-unstable] [XEN][POWERPC] Fully inline udelay()
# HG changeset patch # User Jimi Xenidis <jimix@xxxxxxxxxxxxxx> # Node ID e108c5ac16ac3483e88164ebe324e56fed2f75dd # Parent 8cb0d0eea35568f776574e69800448b04447a0b9 [XEN][POWERPC] Fully inline udelay() Signed-off-by: Jimi Xenidis <jimix@xxxxxxxxxxxxxx> Signed-off-by: Hollis Blanchard <hollisb@xxxxxxxxxx> --- xen/arch/powerpc/delay.c | 37 ------------------------------------- xen/arch/powerpc/Makefile | 1 - xen/include/asm-powerpc/delay.h | 17 +++++++++++++++-- 3 files changed, 15 insertions(+), 40 deletions(-) diff -r 8cb0d0eea355 -r e108c5ac16ac xen/arch/powerpc/Makefile --- a/xen/arch/powerpc/Makefile Thu Sep 21 07:36:17 2006 -0400 +++ b/xen/arch/powerpc/Makefile Thu Sep 21 07:37:00 2006 -0400 @@ -12,7 +12,6 @@ obj-y += dart.o obj-y += dart.o obj-y += dart_u3.o obj-y += dart_u4.o -obj-y += delay.o obj-y += domctl.o obj-y += domain_build.o obj-y += domain.o diff -r 8cb0d0eea355 -r e108c5ac16ac xen/include/asm-powerpc/delay.h --- a/xen/include/asm-powerpc/delay.h Thu Sep 21 07:36:17 2006 -0400 +++ b/xen/include/asm-powerpc/delay.h Thu Sep 21 07:37:00 2006 -0400 @@ -13,16 +13,29 @@ * along with this program; if not, write to the Free Software * Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. * - * Copyright (C) IBM Corp. 2005 + * Copyright (C) IBM Corp. 2005, 2006 * * Authors: Hollis Blanchard <hollisb@xxxxxxxxxx> + * Jimi Xenidis <jimix@xxxxxxxxxxxxxx> */ #ifndef _ASM_DELAY_H_ #define _ASM_DELAY_H_ +#include <asm/time.h> + extern unsigned long ticks_per_usec; #define __udelay udelay -extern void udelay(unsigned long usecs); +static inline void udelay(unsigned long usecs) +{ + unsigned long ticks = usecs * ticks_per_usec; + unsigned long s; + unsigned long e; + s = get_timebase(); + do { + asm volatile("or 1,1,1"); /* also puts the thread to low priority */ + e = get_timebase(); + } while ((e-s) < ticks); +} #endif diff -r 8cb0d0eea355 -r e108c5ac16ac xen/arch/powerpc/delay.c --- a/xen/arch/powerpc/delay.c Thu Sep 21 07:36:17 2006 -0400 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,37 +0,0 @@ -/* - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. - * - * Copyright (C) IBM Corp. 2005 - * - * Authors: Jimi Xenidis <jimix@xxxxxxxxxxxxxx> - */ - -#include <xen/config.h> -#include <xen/delay.h> -#include <xen/time.h> -#include <asm/processor.h> - -void udelay(unsigned long usecs) -{ - ulong ticks = usecs * ticks_per_usec; - ulong s; - ulong e; - - s = get_timebase(); - do { - asm volatile("or 1,1,1"); /* also puts the thread to low priority */ - e = get_timebase(); - } while ((e-s) < ticks); -} _______________________________________________ Xen-changelog mailing list Xen-changelog@xxxxxxxxxxxxxxxxxxx http://lists.xensource.com/xen-changelog
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |