Lines Matching refs:ctrl

306 	struct arch_hw_breakpoint_ctrl ctrl;  in get_max_wp_len()  local
312 memset(&ctrl, 0, sizeof(ctrl)); in get_max_wp_len()
313 ctrl.len = ARM_BREAKPOINT_LEN_8; in get_max_wp_len()
314 ctrl_reg = encode_ctrl_reg(ctrl); in get_max_wp_len()
338 u32 addr, ctrl; in arch_install_hw_breakpoint() local
341 ctrl = encode_ctrl_reg(info->ctrl) | 0x1; in arch_install_hw_breakpoint()
343 if (info->ctrl.type == ARM_BREAKPOINT_EXECUTE) { in arch_install_hw_breakpoint()
374 ctrl = encode_ctrl_reg(info->step_ctrl); in arch_install_hw_breakpoint()
375 if (info->ctrl.type != ARM_BREAKPOINT_EXECUTE) { in arch_install_hw_breakpoint()
386 write_wb_reg(ctrl_base + i, ctrl); in arch_install_hw_breakpoint()
396 if (info->ctrl.type == ARM_BREAKPOINT_EXECUTE) { in arch_uninstall_hw_breakpoint()
424 if (info->ctrl.type != ARM_BREAKPOINT_EXECUTE && in arch_uninstall_hw_breakpoint()
466 len = get_hbp_len(info->ctrl.len); in arch_check_bp_in_kernelspace()
476 int arch_bp_generic_fields(struct arch_hw_breakpoint_ctrl ctrl, in arch_bp_generic_fields() argument
480 switch (ctrl.type) { in arch_bp_generic_fields()
498 switch (ctrl.len) { in arch_bp_generic_fields()
528 info->ctrl.type = ARM_BREAKPOINT_EXECUTE; in arch_build_bp_info()
531 info->ctrl.type = ARM_BREAKPOINT_LOAD; in arch_build_bp_info()
534 info->ctrl.type = ARM_BREAKPOINT_STORE; in arch_build_bp_info()
537 info->ctrl.type = ARM_BREAKPOINT_LOAD | ARM_BREAKPOINT_STORE; in arch_build_bp_info()
546 info->ctrl.len = ARM_BREAKPOINT_LEN_1; in arch_build_bp_info()
549 info->ctrl.len = ARM_BREAKPOINT_LEN_2; in arch_build_bp_info()
552 info->ctrl.len = ARM_BREAKPOINT_LEN_4; in arch_build_bp_info()
555 info->ctrl.len = ARM_BREAKPOINT_LEN_8; in arch_build_bp_info()
556 if ((info->ctrl.type != ARM_BREAKPOINT_EXECUTE) in arch_build_bp_info()
569 if (info->ctrl.type == ARM_BREAKPOINT_EXECUTE && in arch_build_bp_info()
570 info->ctrl.len != ARM_BREAKPOINT_LEN_2 && in arch_build_bp_info()
571 info->ctrl.len != ARM_BREAKPOINT_LEN_4) in arch_build_bp_info()
578 info->ctrl.privilege = ARM_BREAKPOINT_USER; in arch_build_bp_info()
580 info->ctrl.privilege |= ARM_BREAKPOINT_PRIV; in arch_build_bp_info()
583 info->ctrl.enabled = !bp->attr.disabled; in arch_build_bp_info()
586 info->ctrl.mismatch = 0; in arch_build_bp_info()
610 if (info->ctrl.len == ARM_BREAKPOINT_LEN_8) in arch_validate_hwbkpt_settings()
620 if (info->ctrl.len == ARM_BREAKPOINT_LEN_2) in arch_validate_hwbkpt_settings()
624 if (info->ctrl.len == ARM_BREAKPOINT_LEN_1) in arch_validate_hwbkpt_settings()
632 info->ctrl.len <<= offset; in arch_validate_hwbkpt_settings()
658 (info->ctrl.type == ARM_BREAKPOINT_LOAD || in arch_validate_hwbkpt_settings()
659 info->ctrl.type == ARM_BREAKPOINT_STORE)) in arch_validate_hwbkpt_settings()
678 info->step_ctrl.privilege = info->ctrl.privilege; in enable_single_step()
698 struct arch_hw_breakpoint_ctrl ctrl; in watchpoint_handler() local
721 if (info->ctrl.len == ARM_BREAKPOINT_LEN_8) in watchpoint_handler()
733 decode_ctrl_reg(ctrl_reg, &ctrl); in watchpoint_handler()
734 if (!((1 << (addr & alignment_mask)) & ctrl.len)) in watchpoint_handler()
803 struct arch_hw_breakpoint_ctrl ctrl; in breakpoint_handler() local
828 decode_ctrl_reg(ctrl_reg, &ctrl); in breakpoint_handler()
829 if ((1 << (addr & 0x3)) & ctrl.len) { in breakpoint_handler()