From: Geert Uytterhoeven Date: Mon, 12 Feb 2007 08:55:26 +0000 (-0800) Subject: [PATCH] ps3: cleanup ps3fb before clearing HPTE X-Git-Tag: v2.6.21-rc1~274^2~18 X-Git-Url: https://err.no/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=36dff96b3b83c5d79a45b221adf137b571b03d65;p=linux-2.6 [PATCH] ps3: cleanup ps3fb before clearing HPTE PS3: Cleanup the frame buffer device before clearing the HPTE mapping Signed-off-by: Geert Uytterhoeven Cc: James Simmons Cc: Benjamin Herrenschmidt Cc: Paul Mackerras Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds --- diff --git a/arch/powerpc/platforms/ps3/htab.c b/arch/powerpc/platforms/ps3/htab.c index a4b5a1bc60..e12e59fea1 100644 --- a/arch/powerpc/platforms/ps3/htab.c +++ b/arch/powerpc/platforms/ps3/htab.c @@ -2,7 +2,7 @@ * PS3 pagetable management routines. * * Copyright (C) 2006 Sony Computer Entertainment Inc. - * Copyright 2006 Sony Corp. + * Copyright 2006, 2007 Sony Corporation * * 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 @@ -24,6 +24,7 @@ #include #include #include +#include #include "platform.h" @@ -233,6 +234,9 @@ static void ps3_hpte_invalidate(unsigned long slot, unsigned long va, static void ps3_hpte_clear(void) { + /* Make sure to clean up the frame buffer device first */ + ps3fb_cleanup(); + lv1_unmap_htab(htab_addr); } diff --git a/include/asm-powerpc/ps3fb.h b/include/asm-powerpc/ps3fb.h index 8933adf535..ad81cf4319 100644 --- a/include/asm-powerpc/ps3fb.h +++ b/include/asm-powerpc/ps3fb.h @@ -45,8 +45,10 @@ struct ps3fb_ioctl_res { #ifdef CONFIG_FB_PS3 extern void ps3fb_flip_ctl(int on); +extern void ps3fb_cleanup(void); #else static inline void ps3fb_flip_ctl(int on) {} +static inline void ps3fb_cleanup(void) {} #endif #endif /* __KERNEL__ */