Wednesday, 2022-09-07

openpowerbot[slack] <Jeremy Kerr> @Boris Shingarov this (original issue) looked more like a problem with my debug environment, particularly the grounding on the USB host side.00:56
openpowerbot[slack] <Jeremy Kerr> but in in response to your questions - if you do a step, the NIA should advance and the next instruction executes; creset will reset the core state, and NIA back to the system reset vector; a subsequent start (or step) will begin executing from that point01:00
openpowerbot[slack] <Jeremy Kerr> but in in response to your questions - if you do a step, the NIA should advance and the next instruction executes; creset will reset the core state (including NIA back to the system reset vector); a subsequent start (or step) will begin executing from that point.01:01
openpowerbot[slack] <Boris Shingarov> > if you do a step, the NIA should advance and the next instruction executes01:33
openpowerbot[slack] <Boris Shingarov> Then something is not right, because this is what I would expect but is not what happens in my setup, even though the DMI itself seems to be perfectly fine.  Are you saying core_step works for you?01:33
openpowerbot[slack] <Jeremy Kerr> I don't think I've tried step recently. What does happen in your setup?01:46
openpowerbot[slack] <Matt Johnston> @Boris Shingarov mw_debug step seems to work here on an arty with current master01:56
openpowerbot[slack] <Matt Johnston> @Boris Shingarov mw_debug step seems to work here on an arty with current master. that's after doing a `stop`.02:01
openpowerbot[slack] <Benjamin Herrenschmidt> `step` is a bit fragile and core changes regularly break it...06:03
openpowerbot[slack] <Boris Shingarov> Ok, just got myself convinced that `step` is indeed stepping in the current master.  The actual problem is that I don't understand what causes `_start` in head.S at `0x00000000` (the `RESET_ADDRESS` in fetch1.vhdl) to be mapped to `0xff000000` (where it is in the flash).  If I stop right after the memtest, peeking at what memory contents are where confirms the code for `_start` is at `0xff000000` and07:09
openpowerbot[slack] <Boris Shingarov> ```$ mw mr ff000000 107:09
openpowerbot[slack] <Boris Shingarov> 00000000ff000000: 4800002408000048  H...$..H```07:09
openpowerbot[slack] <Boris Shingarov> that's the endian-detect palindrome right there,07:09
openpowerbot[slack] <Boris Shingarov> but07:09
openpowerbot[slack] <Boris Shingarov> ```$ mw mr 0 107:09
openpowerbot[slack] <Boris Shingarov> 0000000000000000: ffffffffffffffff  ........```07:09
openpowerbot[slack] <Boris Shingarov> and of course `mw reset` and `mw start` doesn't get to run any code.07:09
openpowerbot[slack] <Boris Shingarov> So...07:09
openpowerbot[slack] <Boris Shingarov> How does it jump to `ff000000` on normal power-on reset??07:09
openpowerbot[slack] <Matt Johnston> I think that comes from `ALT_RESET_ADDRESS` which is used `core_alt_reset` is set? that gets cleared after the dram is initialised07:16
openpowerbot[slack] <Matt Johnston> I think that comes from `ALT_RESET_ADDRESS` which is used if `core_alt_reset` is set? that gets cleared after the dram is initialised07:16
openpowerbot[slack] <Boris Shingarov> Oh, now I see:07:46
openpowerbot[slack] <Boris Shingarov> ```core_alt_reset <= not init_done;```07:46
openpowerbot[slack] <Boris Shingarov> in the litedram wrapper.07:46
openpowerbot[slack] <Boris Shingarov> And I guess `init_done` gets back to 0 when the external reset on the PCB is pulled.  Makes sense.07:46
openpowerbot[slack] <Boris Shingarov> Thanks for the pointer!07:46
*** pietrushnic <pietrushnic!~pietrushn@2001:470:69fc:105::1:69c> has quit IRC07:47
*** programmerjake <programmerjake!~programme@2001:470:69fc:105::172f> has quit IRC07:47
*** toshywoshy <toshywoshy!~toshywosh@ptr-377wf33o3bnthuddmycb.18120a2.ip6.access.telenet.be> has quit IRC07:47
*** pietrushnic <pietrushnic!~pietrushn@2001:470:69fc:105::1:69c> has joined #microwatt07:50
*** pietrushnic <pietrushnic!~pietrushn@2001:470:69fc:105::1:69c> has quit IRC07:51
*** toshywoshy <toshywoshy!~toshywosh@ptr-377wf33o3bnthuddmycb.18120a2.ip6.access.telenet.be> has joined #microwatt07:58
*** programmerjake <programmerjake!~programme@2001:470:69fc:105::172f> has joined #microwatt10:48
*** pietrushnic <pietrushnic!~pietrushn@2001:470:69fc:105::1:69c> has joined #microwatt11:24
openpowerbot[slack] <Benjamin Herrenschmidt> Yup, it's the 'magic firnware' for litedram:-)16:25
*** fitzsim <fitzsim!~user@69-165-165-189.dsl.teksavvy.com> has quit IRC21:24
*** fitzsim <fitzsim!~user@69-165-165-189.dsl.teksavvy.com> has joined #microwatt21:29

Generated by irclog2html.py 2.17.1 by Marius Gedminas - find it at https://mg.pov.lt/irclog2html/!