[Cbe-oss-dev] [PATCH] cell: move SPU affinity init code to a separate file
André Detsch
adetsch at br.ibm.com
Wed Jul 25 05:09:42 EST 2007
Geoff Levand wrote:
> Andre Detsch wrote:
>> +static int init_spu_affinity(void)
>> +{
>> + if (of_has_vicinity()) {
>> + init_aff_fw_vicinity();
>> + } else {
>> + long root = of_get_flat_dt_root();
>> + if (of_flat_dt_is_compatible(root, "IBM,CPBW-1.0"))
>> + init_aff_QS20_harcoded();
>> + }
>> +
>> + return 0;
>> +}
> There is nothing here to prevent this code from executing
> on the PS3. module_init() will unconditionaly run
> init_spu_affinity() for all platforms. PS3 has no OF, and
> when this code runs it will most likely fault. Even if it
> does run, it won't be doing the correct thing.
Adding something like
if (!machine_is(cell))
return -ENODEV;
at the beginning of init_spu_affinity(void) would be enough?
--
Andre Detsch
More information about the cbe-oss-dev
mailing list