Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Adding missing ARC-related code #31

Merged

Conversation

EvgeniiDidin
Copy link
Collaborator

This patch series adds necessary ARC-related code which is not yet upstreamed.

@EvgeniiDidin EvgeniiDidin mentioned this pull request Jul 29, 2020
@galak
Copy link
Contributor

galak commented Jul 29, 2020

I noticed a few patches got committed upstream:

https://repo.or.cz/openocd.git/commit/8fea8460dbc6ca23e34a16898e86231daab0594d
https://repo.or.cz/openocd.git/commit/b2821b607460f8ce564b8b9d1cd968439058a108

I'll pull in the upstream commits and we can rebase your PR on them.

Signed-off-by: Evgeniy Didin <didin@synopsys.com>
Signed-off-by: Evgeniy Didin <didin@synopsys.com>
Signed-off-by: Evgeniy Didin <didin@synopsys.com>
Signed-off-by: Evgeniy Didin <didin@synopsys.com>
@EvgeniiDidin
Copy link
Collaborator Author

@galak, I updated this pull request according current state of zephyr-20200722 branch.

@galak galak merged commit 885e686 into zephyrproject-rtos:zephyr-20200722 Aug 7, 2020
artemiy-volkov pushed a commit to foss-for-synopsys-dwc-arc-processors/openocd that referenced this pull request Jul 17, 2023
Presently, we rely on gdb to restore break/watchpoints upon resuming
execution in arc_resume(). This leads to problems in absence of gdb
(more specifically, when handle_breakpoints is true); for instance, a
breakpoint temporarily removed in arc_step() will not be reactivated.
This patch rectifies this problem by explicitly re-enabling all
breakpoints and watchpoints in arc_resume().

This has previously been committed to the Zephyr project's openocd repo
(see zephyrproject-rtos/openocd#31).

Change-Id: I59e9c91270ef0b5fd19cfc570663dc67a6022dbd
Signed-off-by: Evgeniy Didin <didin@synopsys.com>
Signed-off-by: Stephanos Ioannidis <root@stephanos.io>
Signed-off-by: Artemiy Volkov <artemiy@synopsys.com>
artemiy-volkov pushed a commit to foss-for-synopsys-dwc-arc-processors/openocd that referenced this pull request Jul 17, 2023
When requested by the core code (handle_breakpoints = true),
arc_resume() should be able to advance over a potential breakpoint set
at the resume address instead of getting stuck in one place. This is
achieved by removing the breakpoint, executing one instruction,
resetting the breakpoint, then proceeding forward as normal.

With this patch applied, openocd is now able to resume from a
breakpoint halt when debugging ARCv2 targets via telnet.

This has previously been committed to the Zephyr project's openocd repo
(see zephyrproject-rtos/openocd#31).

Change-Id: I17dba0dcea311d394b303c587bc2dfaa99d67859
Signed-off-by: Evgeniy Didin <didin@synopsys.com>
Signed-off-by: Stephanos Ioannidis <root@stephanos.io>
Signed-off-by: Artemiy Volkov <artemiy@synopsys.com>
artemiy-volkov pushed a commit to foss-for-synopsys-dwc-arc-processors/openocd that referenced this pull request Jul 18, 2023
Presently, we rely on gdb to restore break/watchpoints upon resuming
execution in arc_resume(). This leads to problems in absence of gdb
(more specifically, when handle_breakpoints is true); for instance, a
breakpoint temporarily removed in arc_step() will not be reactivated.
This patch rectifies this problem by explicitly re-enabling all
breakpoints and watchpoints in arc_resume().

This has previously been committed to the Zephyr project's openocd repo
(see zephyrproject-rtos/openocd#31).

Change-Id: I59e9c91270ef0b5fd19cfc570663dc67a6022dbd
Signed-off-by: Evgeniy Didin <didin@synopsys.com>
Signed-off-by: Stephanos Ioannidis <root@stephanos.io>
Signed-off-by: Artemiy Volkov <artemiy@synopsys.com>
artemiy-volkov pushed a commit to foss-for-synopsys-dwc-arc-processors/openocd that referenced this pull request Jul 18, 2023
When requested by the core code (handle_breakpoints = true),
arc_resume() should be able to advance over a potential breakpoint set
at the resume address instead of getting stuck in one place. This is
achieved by removing the breakpoint, executing one instruction,
resetting the breakpoint, then proceeding forward as normal.

With this patch applied, openocd is now able to resume from a
breakpoint halt when debugging ARCv2 targets via telnet.

This has previously been committed to the Zephyr project's openocd repo
(see zephyrproject-rtos/openocd#31).

Change-Id: I17dba0dcea311d394b303c587bc2dfaa99d67859
Signed-off-by: Evgeniy Didin <didin@synopsys.com>
Signed-off-by: Stephanos Ioannidis <root@stephanos.io>
Signed-off-by: Artemiy Volkov <artemiy@synopsys.com>
artemiy-volkov pushed a commit to foss-for-synopsys-dwc-arc-processors/openocd that referenced this pull request Jul 18, 2023
Presently, we rely on gdb to restore break/watchpoints upon resuming
execution in arc_resume(). This leads to problems in absence of gdb
(more specifically, when handle_breakpoints is true); for instance, a
breakpoint temporarily removed in arc_step() will not be reactivated.
This patch rectifies this problem by explicitly re-enabling all
breakpoints and watchpoints in arc_resume().

This has previously been committed to the Zephyr project's openocd repo
(see zephyrproject-rtos/openocd#31).

Change-Id: I59e9c91270ef0b5fd19cfc570663dc67a6022dbd
Signed-off-by: Evgeniy Didin <didin@synopsys.com>
Signed-off-by: Stephanos Ioannidis <root@stephanos.io>
Signed-off-by: Artemiy Volkov <artemiy@synopsys.com>
artemiy-volkov pushed a commit to foss-for-synopsys-dwc-arc-processors/openocd that referenced this pull request Jul 18, 2023
When requested by the core code (handle_breakpoints = true),
arc_resume() should be able to advance over a potential breakpoint set
at the resume address instead of getting stuck in one place. This is
achieved by removing the breakpoint, executing one instruction,
resetting the breakpoint, then proceeding forward as normal.

With this patch applied, openocd is now able to resume from a
breakpoint halt when debugging ARCv2 targets via telnet.

This has previously been committed to the Zephyr project's openocd repo
(see zephyrproject-rtos/openocd#31).

Change-Id: I17dba0dcea311d394b303c587bc2dfaa99d67859
Signed-off-by: Evgeniy Didin <didin@synopsys.com>
Signed-off-by: Stephanos Ioannidis <root@stephanos.io>
Signed-off-by: Artemiy Volkov <artemiy@synopsys.com>
artemiy-volkov pushed a commit to foss-for-synopsys-dwc-arc-processors/openocd that referenced this pull request Jul 21, 2023
Presently, we rely on gdb to restore break/watchpoints upon resuming
execution in arc_resume(). This leads to problems in absence of gdb
(more specifically, when handle_breakpoints is true); for instance, a
breakpoint temporarily removed in arc_step() will not be reactivated.
This patch rectifies this problem by explicitly re-enabling all
breakpoints and watchpoints in arc_resume().

This has previously been committed to the Zephyr project's openocd repo
(see zephyrproject-rtos/openocd#31).

Change-Id: I59e9c91270ef0b5fd19cfc570663dc67a6022dbd
Signed-off-by: Evgeniy Didin <didin@synopsys.com>
Signed-off-by: Stephanos Ioannidis <root@stephanos.io>
Signed-off-by: Artemiy Volkov <artemiy@synopsys.com>
artemiy-volkov pushed a commit to foss-for-synopsys-dwc-arc-processors/openocd that referenced this pull request Jul 21, 2023
When requested by the core code (handle_breakpoints = true),
arc_resume() should be able to advance over a potential breakpoint set
at the resume address instead of getting stuck in one place. This is
achieved by removing the breakpoint, executing one instruction,
resetting the breakpoint, then proceeding forward as normal.

With this patch applied, openocd is now able to resume from a
breakpoint halt when debugging ARCv2 targets via telnet.

This has previously been committed to the Zephyr project's openocd repo
(see zephyrproject-rtos/openocd#31).

Change-Id: I17dba0dcea311d394b303c587bc2dfaa99d67859
Signed-off-by: Evgeniy Didin <didin@synopsys.com>
Signed-off-by: Stephanos Ioannidis <root@stephanos.io>
Signed-off-by: Artemiy Volkov <artemiy@synopsys.com>
ntfreak pushed a commit to openocd-org/openocd that referenced this pull request Jan 13, 2024
Presently, we rely on gdb to restore break/watchpoints upon resuming
execution in arc_resume(). To match this behavior in absence of gdb
(more specifically, when handle_breakpoints is true), this patch
explicitly re-enables all breakpoints and watchpoints in arc_resume().

This has previously been committed to the Zephyr project's openocd repo
(see zephyrproject-rtos/openocd#31).

Change-Id: I59e9c91270ef0b5fd19cfc570663dc67a6022dbd
Signed-off-by: Evgeniy Didin <didin@synopsys.com>
Signed-off-by: Stephanos Ioannidis <root@stephanos.io>
Signed-off-by: Artemiy Volkov <artemiy@synopsys.com>
Reviewed-on: https://review.openocd.org/c/openocd/+/7816
Tested-by: jenkins
Reviewed-by: Antonio Borneo <borneo.antonio@gmail.com>
Reviewed-by: Oleksij Rempel <linux@rempel-privat.de>
ntfreak pushed a commit to openocd-org/openocd that referenced this pull request Jan 13, 2024
When requested by the core code (handle_breakpoints = true),
arc_resume() should be able to advance over a potential breakpoint set
at the resume address instead of getting stuck in one place. This is
achieved by removing the breakpoint, executing one instruction,
resetting the breakpoint, then proceeding forward as normal.

With this patch applied, openocd is now able to resume from a
breakpoint halt when debugging ARCv2 targets via telnet.

This has previously been committed to the Zephyr project's openocd repo
(see zephyrproject-rtos/openocd#31).

Change-Id: I17dba0dcea311d394b303c587bc2dfaa99d67859
Signed-off-by: Evgeniy Didin <didin@synopsys.com>
Signed-off-by: Stephanos Ioannidis <root@stephanos.io>
Signed-off-by: Artemiy Volkov <artemiy@synopsys.com>
Reviewed-on: https://review.openocd.org/c/openocd/+/7817
Reviewed-by: Antonio Borneo <borneo.antonio@gmail.com>
Tested-by: jenkins
en-sc pushed a commit to riscv-collab/riscv-openocd that referenced this pull request Jan 29, 2024
Presently, we rely on gdb to restore break/watchpoints upon resuming
execution in arc_resume(). To match this behavior in absence of gdb
(more specifically, when handle_breakpoints is true), this patch
explicitly re-enables all breakpoints and watchpoints in arc_resume().

This has previously been committed to the Zephyr project's openocd repo
(see zephyrproject-rtos/openocd#31).

Change-Id: I59e9c91270ef0b5fd19cfc570663dc67a6022dbd
Signed-off-by: Evgeniy Didin <didin@synopsys.com>
Signed-off-by: Stephanos Ioannidis <root@stephanos.io>
Signed-off-by: Artemiy Volkov <artemiy@synopsys.com>
Reviewed-on: https://review.openocd.org/c/openocd/+/7816
Tested-by: jenkins
Reviewed-by: Antonio Borneo <borneo.antonio@gmail.com>
Reviewed-by: Oleksij Rempel <linux@rempel-privat.de>
en-sc pushed a commit to riscv-collab/riscv-openocd that referenced this pull request Jan 29, 2024
When requested by the core code (handle_breakpoints = true),
arc_resume() should be able to advance over a potential breakpoint set
at the resume address instead of getting stuck in one place. This is
achieved by removing the breakpoint, executing one instruction,
resetting the breakpoint, then proceeding forward as normal.

With this patch applied, openocd is now able to resume from a
breakpoint halt when debugging ARCv2 targets via telnet.

This has previously been committed to the Zephyr project's openocd repo
(see zephyrproject-rtos/openocd#31).

Change-Id: I17dba0dcea311d394b303c587bc2dfaa99d67859
Signed-off-by: Evgeniy Didin <didin@synopsys.com>
Signed-off-by: Stephanos Ioannidis <root@stephanos.io>
Signed-off-by: Artemiy Volkov <artemiy@synopsys.com>
Reviewed-on: https://review.openocd.org/c/openocd/+/7817
Reviewed-by: Antonio Borneo <borneo.antonio@gmail.com>
Tested-by: jenkins
gerekon pushed a commit to espressif/openocd-esp32 that referenced this pull request Feb 9, 2024
Presently, we rely on gdb to restore break/watchpoints upon resuming
execution in arc_resume(). To match this behavior in absence of gdb
(more specifically, when handle_breakpoints is true), this patch
explicitly re-enables all breakpoints and watchpoints in arc_resume().

This has previously been committed to the Zephyr project's openocd repo
(see zephyrproject-rtos/openocd#31).

Change-Id: I59e9c91270ef0b5fd19cfc570663dc67a6022dbd
Signed-off-by: Evgeniy Didin <didin@synopsys.com>
Signed-off-by: Stephanos Ioannidis <root@stephanos.io>
Signed-off-by: Artemiy Volkov <artemiy@synopsys.com>
Reviewed-on: https://review.openocd.org/c/openocd/+/7816
Tested-by: jenkins
Reviewed-by: Antonio Borneo <borneo.antonio@gmail.com>
Reviewed-by: Oleksij Rempel <linux@rempel-privat.de>
gerekon pushed a commit to espressif/openocd-esp32 that referenced this pull request Feb 9, 2024
When requested by the core code (handle_breakpoints = true),
arc_resume() should be able to advance over a potential breakpoint set
at the resume address instead of getting stuck in one place. This is
achieved by removing the breakpoint, executing one instruction,
resetting the breakpoint, then proceeding forward as normal.

With this patch applied, openocd is now able to resume from a
breakpoint halt when debugging ARCv2 targets via telnet.

This has previously been committed to the Zephyr project's openocd repo
(see zephyrproject-rtos/openocd#31).

Change-Id: I17dba0dcea311d394b303c587bc2dfaa99d67859
Signed-off-by: Evgeniy Didin <didin@synopsys.com>
Signed-off-by: Stephanos Ioannidis <root@stephanos.io>
Signed-off-by: Artemiy Volkov <artemiy@synopsys.com>
Reviewed-on: https://review.openocd.org/c/openocd/+/7817
Reviewed-by: Antonio Borneo <borneo.antonio@gmail.com>
Tested-by: jenkins
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants