Вопрос в следующем.
Есть OpenOcd.
Есть ARM7 с его двумя Watchpoint.
Я подключаю JTAG-адаптер к целевому контроллеру (NXP2378 для конкретики, но не суть),
запускаю OpenOCD, запускаю telnet сессию.
Командой reg могу посмотреть все регистры и адреса, на которые установлены breakpoint / watchpoint.
Могу установить breakpoint командой bp на определенный адрес, например:
bp 0x100
потом могу снять его с этого адреса,
rbp 0x100
Но я бы хотел снимать breakpoint без указания адреса, просто убить существующие и все.
Нужно это вот для чего.
Я запускаю gdb отладчик, в котором ставлю breakpoint на main.
Если я из отладчика выхожу, предварительно остановив программу, то все хорошо, breakpoint снимается при выходе автоматически. Но если я закрываю сессию отладки без предварительной отсановки, то этот breakpoint отстается и считается занятым. Таким образом, когда я компилирую программу в следующий раз, у меня адрес main смещается, и при установке занимается второй аппаратный watchpoint. Отладчик частично перестает работать, потому что у него занят нужный ему watchpoint, OpenOCD начинает ругаться на то, что аппаратный компаратор недоступен.
Если убить сам OpenOCD и запустить его снова, то я вижу, что все breakpoint сброшены, то есть сам по себе при инициализации он это делает.
Конкретно я пытаюсь использовать GBD встроенный в SlikEdit.
Я думаю, что в скрипте перед загрузкой флеш нужно просто снять все breakpoint командой для OpenOCD, тогда это решит проблему. Но такой команды я не нашел. Ее нет? Плохо искал?
А в Eclipse существует аналогичная проблема? Кто работает, можете попробовать?

Если немного сумбурно, прошу прощения, просто конец дня, и уже убегаю домой, а вопрос хотелось бы решить поскорее..