As FreeScale e500 systems have different cacheline sizes from e500mc, it is basically impossible for the kernel to support both in a single system image at present.
Given that one is SPE-float and the other is classic-float, they are not generally userspace-compatible either. This patch updates the conditional to depend on whether the system is actually targetting an "e500" or "e500mc" core and entirely removes the unused sync-to-lwsync-replacement on e500v1/e500v2 systems. Signed-off-by: Kyle Moffett <kyle.d.moff...@boeing.com> --- arch/powerpc/include/asm/synch.h | 16 ++++------------ 1 files changed, 4 insertions(+), 12 deletions(-) diff --git a/arch/powerpc/include/asm/synch.h b/arch/powerpc/include/asm/synch.h index d7cab44..3d518b6 100644 --- a/arch/powerpc/include/asm/synch.h +++ b/arch/powerpc/include/asm/synch.h @@ -5,8 +5,11 @@ #include <linux/stringify.h> #include <asm/feature-fixups.h> -#if defined(__powerpc64__) || defined(CONFIG_PPC_E500MC) +#if defined(__powerpc64__) || defined(CONFIG_FSL_E500MC) #define __SUBARCH_HAS_LWSYNC +#define LWSYNC lwsync +#else +#define LWSYNC sync #endif #ifndef __ASSEMBLY__ @@ -25,17 +28,6 @@ static inline void isync(void) } #endif /* __ASSEMBLY__ */ -#if defined(__powerpc64__) -# define LWSYNC lwsync -#elif defined(CONFIG_E500) -# define LWSYNC \ - START_LWSYNC_SECTION(96); \ - sync; \ - MAKE_LWSYNC_SECTION_ENTRY(96, __lwsync_fixup); -#else -# define LWSYNC sync -#endif - #ifdef CONFIG_SMP #define __PPC_ACQUIRE_BARRIER \ START_LWSYNC_SECTION(97); \ -- 1.7.2.5 _______________________________________________ Linuxppc-dev mailing list Linuxppc-dev@lists.ozlabs.org https://lists.ozlabs.org/listinfo/linuxppc-dev