• Home
  • Raw
  • Download

Lines Matching refs:hw

451 int arch_check_bp_in_kernelspace(struct arch_hw_breakpoint *hw)  in arch_check_bp_in_kernelspace()  argument
456 va = hw->address; in arch_check_bp_in_kernelspace()
457 len = get_hbp_len(hw->ctrl.len); in arch_check_bp_in_kernelspace()
514 struct arch_hw_breakpoint *hw) in arch_build_bp_info() argument
519 hw->ctrl.type = ARM_BREAKPOINT_EXECUTE; in arch_build_bp_info()
522 hw->ctrl.type = ARM_BREAKPOINT_LOAD; in arch_build_bp_info()
525 hw->ctrl.type = ARM_BREAKPOINT_STORE; in arch_build_bp_info()
528 hw->ctrl.type = ARM_BREAKPOINT_LOAD | ARM_BREAKPOINT_STORE; in arch_build_bp_info()
537 hw->ctrl.len = ARM_BREAKPOINT_LEN_1; in arch_build_bp_info()
540 hw->ctrl.len = ARM_BREAKPOINT_LEN_2; in arch_build_bp_info()
543 hw->ctrl.len = ARM_BREAKPOINT_LEN_4; in arch_build_bp_info()
546 hw->ctrl.len = ARM_BREAKPOINT_LEN_8; in arch_build_bp_info()
547 if ((hw->ctrl.type != ARM_BREAKPOINT_EXECUTE) in arch_build_bp_info()
561 if (hw->ctrl.type == ARM_BREAKPOINT_EXECUTE && in arch_build_bp_info()
562 hw->ctrl.len != ARM_BREAKPOINT_LEN_2 && in arch_build_bp_info()
563 hw->ctrl.len != ARM_BREAKPOINT_LEN_4) in arch_build_bp_info()
567 hw->address = attr->bp_addr; in arch_build_bp_info()
570 hw->ctrl.privilege = ARM_BREAKPOINT_USER; in arch_build_bp_info()
571 if (arch_check_bp_in_kernelspace(hw)) in arch_build_bp_info()
572 hw->ctrl.privilege |= ARM_BREAKPOINT_PRIV; in arch_build_bp_info()
575 hw->ctrl.enabled = !attr->disabled; in arch_build_bp_info()
578 hw->ctrl.mismatch = 0; in arch_build_bp_info()
588 struct arch_hw_breakpoint *hw) in hw_breakpoint_arch_parse() argument
598 ret = arch_build_bp_info(bp, attr, hw); in hw_breakpoint_arch_parse()
603 if (hw->ctrl.len == ARM_BREAKPOINT_LEN_8) in hw_breakpoint_arch_parse()
605 offset = hw->address & alignment_mask; in hw_breakpoint_arch_parse()
613 if (hw->ctrl.len == ARM_BREAKPOINT_LEN_2) in hw_breakpoint_arch_parse()
618 if (hw->ctrl.len == ARM_BREAKPOINT_LEN_1) in hw_breakpoint_arch_parse()
626 hw->address &= ~alignment_mask; in hw_breakpoint_arch_parse()
627 hw->ctrl.len <<= offset; in hw_breakpoint_arch_parse()
638 if (arch_check_bp_in_kernelspace(hw)) in hw_breakpoint_arch_parse()
645 if (!bp->hw.target) in hw_breakpoint_arch_parse()
653 (hw->ctrl.type == ARM_BREAKPOINT_LOAD || in hw_breakpoint_arch_parse()
654 hw->ctrl.type == ARM_BREAKPOINT_STORE)) in hw_breakpoint_arch_parse()