Re: How to dynamically disable/enable CPU features?

2008-02-24 Thread Gerhard Pircher
Original-Nachricht Datum: Sat, 23 Feb 2008 09:32:01 +1100 Von: Benjamin Herrenschmidt [EMAIL PROTECTED] An: Gerhard Pircher [EMAIL PROTECTED] CC: Milton Miller [EMAIL PROTECTED], linuxppc-dev@ozlabs.org Betreff: Re: How to dynamically disable/enable CPU features

Re: How to dynamically disable/enable CPU features?

2008-02-22 Thread Milton Miller
At Fri Feb 22 07:07:58 EST 2008, Gerhard Pircher wrote: I'm wondering how to disable or enable CPU features based on the board the kernel is running on. In my case I want to disable the CPU_FTR_NEED_COHERENT flag for 74xx CPUs, because it locks up the machine. I tried to clear the flag in

Re: How to dynamically disable/enable CPU features?

2008-02-22 Thread Gerhard Pircher
Hi, Original-Nachricht Datum: Fri, 22 Feb 2008 11:24:38 -0600 Von: Milton Miller [EMAIL PROTECTED] An: Gerhard Pircher [EMAIL PROTECTED] CC: ppcdev linuxppc-dev@ozlabs.org Betreff: Re: How to dynamically disable/enable CPU features? We handle cpu features in a couple

Re: How to dynamically disable/enable CPU features?

2008-02-22 Thread Benjamin Herrenschmidt
On Thu, 2008-02-21 at 21:07 +0100, Gerhard Pircher wrote: Hi, I'm wondering how to disable or enable CPU features based on the board the kernel is running on. In my case I want to disable the CPU_FTR_NEED_COHERENT flag for 74xx CPUs, because it locks up the machine. I tried to clear the

Re: How to dynamically disable/enable CPU features?

2008-02-22 Thread Benjamin Herrenschmidt
The flag is in POSSIBLE. I now use this code in the platform probe function to nop out the code affected by the flag: cur_cpu_spec-cpu_features = ~CPU_FTR_NEED_COHERENT; /* Patch out unwanted feature. */ do_feature_fixups(cur_cpu_spec-cpu_features,

How to dynamically disable/enable CPU features?

2008-02-21 Thread Gerhard Pircher
Hi, I'm wondering how to disable or enable CPU features based on the board the kernel is running on. In my case I want to disable the CPU_FTR_NEED_COHERENT flag for 74xx CPUs, because it locks up the machine. I tried to clear the flag in the platform's *_probe() function with the following code: