Giter Club home page Giter Club logo

Comments (9)

anpilog avatar anpilog commented on May 18, 2024

Check out my fixes in anpilog@d6e5ee2 on pyOCD/gdbserver/gdbserver.py
Very brutal but working.

from pyocd.

0xc0170 avatar 0xc0170 commented on May 18, 2024

@anpilog Thanks for sharing, will look at it. Do you have also another platforms to test with?

from pyocd.

anpilog avatar anpilog commented on May 18, 2024

I have only LPC11U35 from EA.

On 28 Aug, 2014, at 9:47 am, Martin Kojtal [email protected] wrote:

@anpilog Thanks for sharing, will look at it. Do you have also another platforms to test with?


Reply to this email directly or view it on GitHub.

from pyocd.

ECNU3D avatar ECNU3D commented on May 18, 2024

Hi all,

I've make some comment on Andrey's patch, and maybe we can start our
merging there. It looks like the nrf firmware can't use any breakpoint? If
it is the case, how can user debug it? I think the main conflict part is
in pyOCD/gdbserver/gdbserver.py, which bp is disabled in this patch. One
simplest workaround I can thought of is to wrap Andrey's patch with some if
clause to make it unique for nfr target, but it's very ugly and increase
the difficulty of maintenance.

For the testing work on other target, I think I can take some part in next
week.

BR,
Tony

2014-08-28 9:48 GMT+08:00 Andrii Anpilogov [email protected]:

I have only LPC11U35 from EA.

On 28 Aug, 2014, at 9:47 am, Martin Kojtal [email protected]
wrote:

@anpilog Thanks for sharing, will look at it. Do you have also another
platforms to test with?


Reply to this email directly or view it on GitHub.


Reply to this email directly or view it on GitHub
#55 (comment).

from pyocd.

anpilog avatar anpilog commented on May 18, 2024

Hi Tony,

I think it’s better introduce inherited gdb_server instances, target specific as it is for interfaces and targets.

I removed break points from gdb resume function because soft device somehow blocks communication to DAP (I have no idea how it happens).
So this is not nrf51 specific, it’s SoftDevice specific.

Regards

On 28 Aug, 2014, at 10:57 am, Tony Wang [email protected] wrote:

Hi all,

I've make some comment on Andrey's patch, and maybe we can start our
merging there. It looks like the nrf firmware can't use any breakpoint? If
it is the case, how can user debug it? I think the main conflict part is
in pyOCD/gdbserver/gdbserver.py, which bp is disabled in this patch. One
simplest workaround I can thought of is to wrap Andrey's patch with some if
clause to make it unique for nfr target, but it's very ugly and increase
the difficulty of maintenance.

For the testing work on other target, I think I can take some part in next
week.

BR,
Tony

2014-08-28 9:48 GMT+08:00 Andrii Anpilogov [email protected]:

I have only LPC11U35 from EA.

On 28 Aug, 2014, at 9:47 am, Martin Kojtal [email protected]
wrote:

@anpilog Thanks for sharing, will look at it. Do you have also another
platforms to test with?


Reply to this email directly or view it on GitHub.


Reply to this email directly or view it on GitHub
#55 (comment).


Reply to this email directly or view it on GitHub.

from pyocd.

ECNU3D avatar ECNU3D commented on May 18, 2024

2014-08-28 11:14 GMT+08:00 Andrii Anpilogov [email protected]:

Hi Tony,

I think it’s better introduce inherited gdb_server instances, target
specific as it is for interfaces and targets.

Ehm, I'm wondering if such an inheritance is necessary, because generally,
the gdb_server shouldn't have any tagret specific information as it
communicates with the cmsis-dap, not the specific target.

I removed break points from gdb resume function because soft device
somehow blocks communication to DAP (I have no idea how it happens).

I'm wondering the softdevice firmware is running on the same chip of the
cmsis-dap(sorry about that I have no knowledge about the nordic product)?
Basically, the cmsis-dap runs on a single debugger chip which is isolate
with user application chip. Maybe anyone can share me some documentation
about the detail of softdevice??

So this is not nrf51 specific, it’s SoftDevice specific.

Regards

On 28 Aug, 2014, at 10:57 am, Tony Wang [email protected] wrote:

Hi all,

I've make some comment on Andrey's patch, and maybe we can start our
merging there. It looks like the nrf firmware can't use any breakpoint?
If
it is the case, how can user debug it? I think the main conflict part is
in pyOCD/gdbserver/gdbserver.py, which bp is disabled in this patch. One
simplest workaround I can thought of is to wrap Andrey's patch with some
if
clause to make it unique for nfr target, but it's very ugly and increase
the difficulty of maintenance.

For the testing work on other target, I think I can take some part in
next
week.

BR,
Tony

2014-08-28 9:48 GMT+08:00 Andrii Anpilogov [email protected]:

I have only LPC11U35 from EA.

On 28 Aug, 2014, at 9:47 am, Martin Kojtal [email protected]
wrote:

@anpilog Thanks for sharing, will look at it. Do you have also
another
platforms to test with?


Reply to this email directly or view it on GitHub.


Reply to this email directly or view it on GitHub
#55 (comment).


Reply to this email directly or view it on GitHub.


Reply to this email directly or view it on GitHub
#55 (comment).

from pyocd.

anpilog avatar anpilog commented on May 18, 2024

Nordic implemented BLE host as firmware that runs on same CPU.
It's located in first 0x16000-0x18000 bytes of flash.
So actual application has to be written with offset.
You could find more details here: https://devzone.nordicsemi.com/documentation/nrf51/5.2.0/Introduction_to_the_S110_SoftDevice_v1.0.pdf
Better explanation is in S110_SoftDevice_Specification v1.1.pdf but I can't find it in public access.

I agree with you gdb server implementation should not be target specific.
Keil and openocd works well with SoftDevice and I wonder why.
As an option I would add new configuration parameter to GDB server.
Something like "disable break at hardfault handler". Probably it could be useful on some other platforms.
But so far nrf51 looks like an exception.

I hope I would have couple spare hours this weekend and have a look on that.

Regards

from pyocd.

ECNU3D avatar ECNU3D commented on May 18, 2024

Agreed with Andrey to add an option to workaround this problem.

from pyocd.

0xc0170 avatar 0xc0170 commented on May 18, 2024

Is this still valid with the latest master (included #62 pull request) ?

from pyocd.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.