.macro  disable_step_tsk, flgs, tmp
        tbz     \flgs, #TIF_SINGLESTEP, 9990f
        mrs     \tmp, mdscr_el1
-       bic     \tmp, \tmp, #DBG_MDSCR_SS
+       bic     \tmp, \tmp, #MDSCR_EL1_SS
        msr     mdscr_el1, \tmp
        isb     // Take effect before a subsequent clear of DAIF.D
 9990:
        .macro  enable_step_tsk, flgs, tmp
        tbz     \flgs, #TIF_SINGLESTEP, 9990f
        mrs     \tmp, mdscr_el1
-       orr     \tmp, \tmp, #DBG_MDSCR_SS
+       orr     \tmp, \tmp, #MDSCR_EL1_SS
        msr     mdscr_el1, \tmp
 9990:
        .endm
 
 /*
  * MDSCR access routines.
  */
-static void mdscr_write(u32 mdscr)
+static void mdscr_write(u64 mdscr)
 {
        unsigned long flags;
        flags = local_daif_save();
 }
 NOKPROBE_SYMBOL(mdscr_write);
 
-static u32 mdscr_read(void)
+static u64 mdscr_read(void)
 {
        return read_sysreg(mdscr_el1);
 }
 
 void enable_debug_monitors(enum dbg_active_el el)
 {
-       u32 mdscr, enable = 0;
+       u64 mdscr, enable = 0;
 
        WARN_ON(preemptible());
 
        if (this_cpu_inc_return(mde_ref_count) == 1)
-               enable = DBG_MDSCR_MDE;
+               enable = MDSCR_EL1_MDE;
 
        if (el == DBG_ACTIVE_EL1 &&
            this_cpu_inc_return(kde_ref_count) == 1)
-               enable |= DBG_MDSCR_KDE;
+               enable |= MDSCR_EL1_KDE;
 
        if (enable && debug_enabled) {
                mdscr = mdscr_read();
 
 void disable_debug_monitors(enum dbg_active_el el)
 {
-       u32 mdscr, disable = 0;
+       u64 mdscr, disable = 0;
 
        WARN_ON(preemptible());
 
        if (this_cpu_dec_return(mde_ref_count) == 0)
-               disable = ~DBG_MDSCR_MDE;
+               disable = ~MDSCR_EL1_MDE;
 
        if (el == DBG_ACTIVE_EL1 &&
            this_cpu_dec_return(kde_ref_count) == 0)
-               disable &= ~DBG_MDSCR_KDE;
+               disable &= ~MDSCR_EL1_KDE;
 
        if (disable) {
                mdscr = mdscr_read();
 {
        WARN_ON(!irqs_disabled());
        set_regs_spsr_ss(regs);
-       mdscr_write(mdscr_read() | DBG_MDSCR_SS);
+       mdscr_write(mdscr_read() | MDSCR_EL1_SS);
        enable_debug_monitors(DBG_ACTIVE_EL1);
 }
 NOKPROBE_SYMBOL(kernel_enable_single_step);
 void kernel_disable_single_step(void)
 {
        WARN_ON(!irqs_disabled());
-       mdscr_write(mdscr_read() & ~DBG_MDSCR_SS);
+       mdscr_write(mdscr_read() & ~MDSCR_EL1_SS);
        disable_debug_monitors(DBG_ACTIVE_EL1);
 }
 NOKPROBE_SYMBOL(kernel_disable_single_step);
 int kernel_active_single_step(void)
 {
        WARN_ON(!irqs_disabled());
-       return mdscr_read() & DBG_MDSCR_SS;
+       return mdscr_read() & MDSCR_EL1_SS;
 }
 NOKPROBE_SYMBOL(kernel_active_single_step);
 
 
 
 static void cortex_a76_erratum_1463225_svc_handler(void)
 {
-       u32 reg, val;
+       u64 reg, val;
 
        if (!unlikely(test_thread_flag(TIF_SINGLESTEP)))
                return;
 
        __this_cpu_write(__in_cortex_a76_erratum_1463225_wa, 1);
        reg = read_sysreg(mdscr_el1);
-       val = reg | DBG_MDSCR_SS | DBG_MDSCR_KDE;
+       val = reg | MDSCR_EL1_SS | MDSCR_EL1_KDE;
        write_sysreg(val, mdscr_el1);
        asm volatile("msr daifclr, #8");
        isb();
 
        dsb     nsh
 
        msr     cpacr_el1, xzr                  // Reset cpacr_el1
-       mov     x1, #1 << 12                    // Reset mdscr_el1 and disable
+       mov     x1, MDSCR_EL1_TDCC              // Reset mdscr_el1 and disable
        msr     mdscr_el1, x1                   // access to the DCC from EL0
        reset_pmuserenr_el0 x1                  // Disable PMU access from EL0
        reset_amuserenr_el0 x1                  // Disable AMU access from EL0