#include <linux/utsname.h>
 #include <asm/bugs.h>
 #include <asm/processor.h>
+#include <asm/processor-flags.h>
 #include <asm/i387.h>
 #include <asm/msr.h>
 #include <asm/paravirt.h>
 static int __init no_387(char *s)
 {
        boot_cpu_data.hard_math = 0;
-       write_cr0(0xE | read_cr0());
+       write_cr0(X86_CR0_TS | X86_CR0_EM | X86_CR0_MP | read_cr0());
        return 1;
 }
 
 
 #include <asm/dma.h>
 #include <asm/io.h>
 #include <asm/processor-cyrix.h>
+#include <asm/processor-flags.h>
 #include <asm/timer.h>
 #include <asm/pci-direct.h>
 #include <asm/tsc.h>
 
 static void __cpuinit set_cx86_memwb(void)
 {
-       u32 cr0;
-
        printk(KERN_INFO "Enable Memory-Write-back mode on Cyrix/NSC processor.\n");
 
        /* CCR2 bit 2: unlock NW bit */
        setCx86(CX86_CCR2, getCx86(CX86_CCR2) & ~0x04);
        /* set 'Not Write-through' */
-       cr0 = 0x20000000;
-       write_cr0(read_cr0() | cr0);
+       write_cr0(read_cr0() | X86_CR0_NW);
        /* CCR2 bit 2: lock NW bit and set WT1 */
        setCx86(CX86_CCR2, getCx86(CX86_CCR2) | 0x14 );
 }
 
 #include <asm/msr.h>
 #include <asm/io.h>
 #include <asm/processor-cyrix.h>
+#include <asm/processor-flags.h>
 #include "mtrr.h"
 
 int arr3_protected;
 
        /*  Disable and flush caches. Note that wbinvd flushes the TLBs as
            a side-effect  */
-       cr0 = read_cr0() | 0x40000000;
+       cr0 = read_cr0() | X86_CR0_CD;
        wbinvd();
        write_cr0(cr0);
        wbinvd();
 
 #include <asm/msr.h>
 #include <asm/system.h>
 #include <asm/cpufeature.h>
+#include <asm/processor-flags.h>
 #include <asm/tlbflush.h>
 #include "mtrr.h"
 
        spin_lock(&set_atomicity_lock);
 
        /*  Enter the no-fill (CD=1, NW=0) cache mode and flush caches. */
-       cr0 = read_cr0() | 0x40000000;  /* set CD flag */
+       cr0 = read_cr0() | X86_CR0_CD;
        write_cr0(cr0);
        wbinvd();
 
 
 #include <asm/mtrr.h>
 #include <asm/msr.h>
 #include <asm/processor-cyrix.h>
+#include <asm/processor-flags.h>
 #include "mtrr.h"
 
 
 
                /*  Disable and flush caches. Note that wbinvd flushes the TLBs as
                    a side-effect  */
-               cr0 = read_cr0() | 0x40000000;
+               cr0 = read_cr0() | X86_CR0_CD;
                wbinvd();
                write_cr0(cr0);
                wbinvd();