[Cbe-oss-dev] [PATCH] libspe2 Fix signal type initialization
Markus Deuling
deuling at linux.vnet.ibm.com
Thu Sep 27 18:47:06 EST 2007
Hello,
Kazunori Asayama schrieb:
> "D. Herrendoerfer" <d.herrendoerfer at herrendoerfer.name> wrote:
>> It was reported in the cell Forum, that the Implementation does
>> the opposite of what the Documentation says, so we need to
>> fix the kernel documentation and the libspe implementation.
>>
>
> I don't think so. The current spufs implementation is consistent with
> the current spufs spec document, and there is no need to fix any of
> the kernel, libspe2 or documents:
>
> ---
>
> And the CBEA spec says in the "SPU Configuration Register" section:
>
> ---
> 0 Signal notification 1 mode is overwrite (POR default).
> 1 Signal notification 1 mode is logical OR.
> ---
>
>
> I.e., when the value "1" is written to the signal1_type node, the SNR
> 1 will enter "Or" mode.
>
>
> I suppose that you are saying about the following article. Right ?
>
> http://www.ibm.com/developerworks/forums/dw_thread.jsp?forum=739&thread=175794&cat=46
>
> I think that it is a bug of the ppu-gdb:
>
> --- SDK 2.1 gdb/spu-tdep.c ---
> if (signal1_pending)
> printf_filtered (_("Signal 1 control word 0x%08llx (Type %s)\n"),
> (unsigned long long) signal1,
> signal1_type? "Overwrite" : "Or");
> else
> printf_filtered (_("Signal 1 not pending (Type %s)\n"),
> signal1_type? "Overwrite" : "Or");
>
> if (signal2_pending)
> printf_filtered (_("Signal 2 control word 0x%08llx (Type %s)\n"),
> (unsigned long long) signal2,
> signal2_type? "Overwrite" : "Or");
> else
> printf_filtered (_("Signal 2 not pending (Type %s)\n"),
> signal2_type? "Overwrite" : "Or");
> ---
>
> The same problem still exists in the SDK 3.0 ER.
>
> Ulrich, could you check that ?
>
>
this is from SDK3 gdb/spu-tdep.c:
if (signal1_type)
·······printf_filtered (_("(Type Overwrite)\n"));
else
·······printf_filtered (_("(Type Or)\n"));
So GDB behaves inverted to the CBEA spec, I guess. This is easy to fix.
I'll come up with a fix for SDK4 and current GDB mainline.
Thanks for tracking this down!
--
Markus Deuling
GNU Toolchain for Linux on Cell BE
deuling at de.ibm.com
More information about the cbe-oss-dev
mailing list