* GNU General Public License for more details. *
* *
* You should have received a copy of the GNU General Public License *
- * along with this program; if not, write to the *
- * Free Software Foundation, Inc., *
- * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. *
+ * along with this program. If not, see <http://www.gnu.org/licenses/>. *
***************************************************************************/
-#ifndef __NDS32_H__
-#define __NDS32_H__
+#ifndef OPENOCD_TARGET_NDS32_H
+#define OPENOCD_TARGET_NDS32_H
#include <jtag/jtag.h>
#include "target.h"
/** Record syscall ID for other operations to do special processing for target */
int active_syscall_id;
+ struct breakpoint syscall_break;
+
/** Flag reporting whether global stop is active. */
bool global_stop;
* handler, it should be true. */
bool keep_target_edm_ctl;
+ /* Value of $EDM_CTL before target enters debug mode */
+ uint32_t backup_edm_ctl;
+
/** always use word-aligned address to access memory */
bool word_access_mem;
* hardware breakpoints or not in ROM */
bool auto_convert_hw_bp;
+ /* Flag to indicate the target is attached by debugger or not */
+ bool attached;
+
/** Backpointer to the target. */
struct target *target;
struct nds32_reg {
int32_t num;
- uint32_t value;
- uint64_t value_64;
+ uint8_t value[8];
struct target *target;
struct nds32 *nds32;
bool enable;
uint32_t size, const uint8_t *buffer);
extern int nds32_read_buffer(struct target *target, uint32_t address,
uint32_t size, uint8_t *buffer);
-extern int nds32_bulk_write_memory(struct target *target,
- uint32_t address, uint32_t count, const uint8_t *buffer);
extern int nds32_read_memory(struct target *target, uint32_t address,
uint32_t size, uint32_t count, uint8_t *buffer);
extern int nds32_write_memory(struct target *target, uint32_t address,
return nds32->max_interrupt_level == nds32->current_interrupt_level;
}
-#endif /* __NDS32_H__ */
+#endif /* OPENOCD_TARGET_NDS32_H */