Re: ps3 64-bit kernel: patched prpmc2800.c (fwd)
From: Geoff Levand <hidden>
Date: 2007-06-02 19:01:05
Maik Nijhuis wrote:
While compiling a 64-bit kernel for the playstation 3 I noticed that arch/powerpc/boot/prpmc2800.c doesn't compile. The assembler complains about a constant that is too big. And then this error follows: /tmp/ccYHAOD7.s: Assembler messages: /tmp/ccYHAOD7.s:9: Error: operand out of range (0xffffffffffff7fff is not between 0x0000000000000000 and 0x00000000ffffffff) I managed to fix this issue as follows: At the end of arch/powerpc/boot/prpmc2800.c, there is an assembly instruction rlwinm 10,10,0,~(1<<15) I replaced this by rlwinm 10,10,0,~(1<<15) & ((1<<32)-1) I am running 64-bit gentoo linux with binutils 2.17.50.0.16. It has been compiled on my ps3 using gentoo ebuild scripts. Could you please either fix binutils or apply the above patch?
The trouble is that I have no way to test that change. I don't have the hardware. Since that file is not for PS3, the best thing to do is to not build that file when not building for prpmc2800. I will post a patch that does that. -Geoff