Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

[PATCH] m68k: memory input should be an lvalue (mac/misc.c)

gcc4 is less forgiving and wants memory inputs to be real lvalues; variable
added and value stored in it explicitly before doing __asm__.

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Cc: Roman Zippel <zippel@linux-m68k.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>

authored by

Al Viro and committed by
Linus Torvalds
77add9f3 84a65cc6

+2 -1
+2 -1
arch/m68k/mac/misc.c
··· 572 572 /* make a 1-to-1 mapping, using the transparent tran. reg. */ 573 573 unsigned long virt = (unsigned long) mac_reset; 574 574 unsigned long phys = virt_to_phys(mac_reset); 575 + unsigned long addr = (phys&0xFF000000)|0x8777; 575 576 unsigned long offset = phys-virt; 576 577 local_irq_disable(); /* lets not screw this up, ok? */ 577 578 __asm__ __volatile__(".chip 68030\n\t" 578 579 "pmove %0,%/tt0\n\t" 579 580 ".chip 68k" 580 - : : "m" ((phys&0xFF000000)|0x8777)); 581 + : : "m" (addr)); 581 582 /* Now jump to physical address so we can disable MMU */ 582 583 __asm__ __volatile__( 583 584 ".chip 68030\n\t"