IRC logs for #openrisc Friday, 2013-02-01

asmnow that I've been idle in here for a week, I should speak up00:17
asmare people in here actually loading the openrisc core on fpgas?00:17
_franck_yes I do00:17
asmhow many LEs do you need for the most basic core?00:17
asmand do you work with altera or xilinx?00:18
_franck_well I don't know, I have cachesand MMU00:18
blueCmdasm: I came here with that plan!00:19
blueCmdand they said "better make eglibc run on it first"00:19
asmwhat is that?00:19
blueCmdand never got to it :(00:19
asmo00:19
blueCmdhah, nah that's my own idea00:19
asmI'm just curious how hard it is to get a cpu up on an fgpa00:20
blueCmdasm: then don't mind what I say, I hack software stuff using the simulator (or1ksim) currently :)00:20
_franck_what king of board do you have ? it is may be already supported by orpsoc00:20
_franck_s/king/kind00:20
_franck_the CPU is about 5000 LE on my Cyclone II00:22
asmI have a ztex board with a spartan 6 lx150 on it00:40
asmI think it has about 150kLEs00:40
asmor 149k to be more exact00:40
asm5000 LE is not bad at all, I was expecting far more00:41
_franck_I can see you have DDR2. I don't know if there is a wishbone wrapper for the xilinx MIG controller00:45
_franck_(I don't know xilinx stuff)00:45
asmI also have the de0-nano00:50
asmwhich I think has a cyclone IV on it00:50
asm16kLEs if I remember correctly00:50
_franck_this one is well supported00:50
asmok cool00:51
_franck_http://git.openrisc.net/cgit.cgi/stefan/orpsoc/00:51
asmmakes sense, it's a decent demo board00:52
asmis there a good tutorial on getting the core loaded on that board?00:52
_franck_well, not sure. but it's easy. You download orpsoc, you go to boards/altera/de0_nano/syn/quartus/run00:53
_franck_then make all00:53
_franck_make pgm00:54
_franck_tht should work00:54
asmah, ok00:54
asmand that generates a bitstream?00:54
_franck_if you want to customize the core, just edit http://git.openrisc.net/cgit.cgi/stefan/orpsoc/tree/boards/altera/de0_nano/rtl/verilog/include/or1200_defines.v00:54
_franck_yes00:54
asmhow do you then run code on the core?00:54
_franck_you use gdb + openocd00:55
_franck_or if you use altera, you can use this https://github.com/openrisc/or1k-tcltools00:55
_franck_it uses the altera TCL console00:56
asmah ok00:56
asmI'm familiar with that00:56
asmsweet, thanks for all the help!00:57
asmI have a nice long vacation coming up so I plan to spend some time play with this00:58
_franck_don't hesitate is you have problems (you will :))00:58
asmhaha00:58
asmok00:58
asmthanks!00:58
_franck_blueCmd: .eh_frame warning disappear while compiling a simple test programm01:00
_franck_however, running the gdb testsuite, I got one:01:00
_franck_gdb compile failed, /opt/or1k-toolchain/lib/gcc/or1k-elf/4.8.0/../../../../or1k-elf/bin/ld: error in /opt/or1k-toolchain/lib/gcc/or1k-elf/4.8.0/crtendS.o(.eh_frame); no .eh_frame_hdr table will be created.01:00
_franck_/opt/or1k-toolchain/lib/gcc/or1k-elf/4.8.0/../../../../or1k-elf/bin/ld: warning: cannot find entry symbol 0x100-shared; defaulting to 0000002801:00
blueCmdwhat do you get if you do:01:04
blueCmdor1k-linux-objdump -D /srv/compilers/openrisc-devel/lib/gcc/or1k-linux/4.8.0/crtendS.o -j .eh_frame01:04
blueCmdbut on your stuff ofc01:05
_franck_don't have or1k-linux installed.....01:11
_franck_:)01:11
blueCmdjust replace with what you have .P01:13
_franck_ok, wasn't sure01:13
_franck_or1k-elf-objdump: '/opt/or1k-toolchain/lib/gcc/or1k-linux/4.8.0/crtendS.o': No such file01:13
_franck_or1k-elf-objdump: section '.eh_frame' mentioned in a -j option, but not found in any input file01:13
_franck_oups01:13
blueCmdyou still have an or1k-linux thing there01:13
_franck_my bad no such file, it's time to go to bed01:13
blueCmdin your case it's /opt/or1k-toolchain/lib/gcc/or1k-elf/4.8.0/crtendS.o(01:14
blueCmdwithout the (01:14
_franck_http://pastebin.com/nNMnBuKm01:14
blueCmdyeah, that's wrong01:15
blueCmdyou see the first row of 00 00 00 00 ?01:15
blueCmdthat should be the only one01:15
blueCmdtry rebuilding everything01:15
_franck_that's what I did01:15
blueCmdhm01:15
blueCmdthat t-crtstuff should have fixed it01:15
blueCmdI will try to build an -elf01:16
_franck_It did fix it at some point01:16
_franck_or1k-elf-gcc -o test test.c01:16
_franck_or1k-elf-gcc -o test test.c01:16
_franck_#include <stdio.h>01:17
_franck_void main(void)01:17
_franck_{01:17
_franck_while(1)01:17
_franck_printf("lkjljk test\n");01:17
_franck_}01:17
_franck_this was giving me the warning01:17
_franck_now it's ok01:17
_franck_sleep time, bye01:19
blueCmd_franck_: compiling atm, will get back to you if I can reproduce it or not01:19
blueCmdsleep tight01:19
_franck_ok thanks01:19
blueCmdactually I don't have newlib so I can't compile for that, I just remembered01:22
blueCmdscratch that01:23
blueCmdit's compiled01:23
blueCmd_franck_: reproduced, I will take a look01:23
blueCmd_franck_: please add this patch and give me a call if it works / if it's still broken: http://f91a9190f5452ad8.paste.se/01:51
andresjkhi03:58
_franck_blueCmd: ok, it works for me08:57
_franck_jeremybennett: did you see the pull request on github ? Are you going to take a quick look or I can accept my own request ? :)12:09
-!- Netsplit *.net <-> *.split quits: mboehnert12:10
-!- Netsplit over, joins: mboehnert12:10
jeremybennett_franck_: Haven't seen it yet - let me take a look.12:13
blueCmd_franck_: great!13:00
jeremybennett_franck_: Great work. It's a huge effort, so I have only given it a quick review, but what I see is good. If you are happy that it passes enough tests, I'll pull it into the repo.13:07
_franck_yes I think we should pull it so it is available for everyone the make some other tests passes13:08
blueCmd_franck_: is it gdb?13:10
blueCmdor what are you working on?13:10
_franck_yes it is gdb13:46
blueCmd_franck_: do you have any idea how much work it would be to support or1k-linux-targets?13:53
blueCmdI'm thinking of trying to port gdbserver13:53
_franck_Jonas Bonn did this job already (almost)14:36
_franck_he has a WIP version of this, I'll contact him14:36
_franck_but yes, you could take care of that...14:36
blueCmdah, great!14:51
jeremybennett_franck_: All merged15:53
jeremybennett_franck_: gdbserver was also ported for the old or32. There has been some recent debate on the linux-dev mailing list about how to do register access properly from gdbserver in the latest Linux.15:54
jeremybennettJonas Bonn and Vineet Gupta of Synopsys were part of that discussion, so look for messages from them.15:55
_franck_Yes, he told me ""The jist of my changes is adding tdesc/feature descriptions (as you have done) and getting GDB to use regsets to access registers instead of poking around in memory."16:09
blueCmdhttp://9916ae7817f1cb51.paste.se/16:11
blueCmdhow can 300548f8 be PC and then without a jmp next be 300548e0 ?16:11
blueCmdhttp://2311fce2f973779b.paste.se/ the assembly for that part16:13
stekernblueCmd: that looks mighty weird16:42
stekernbut it doesn't look like it matches your assembly neither, right?16:44
blueCmdstekern: doesn't it?16:46
blueCmdI think it does16:46
stekernyou've got a l.nop 0x9 in the disasm and a l.nop 0x8 in the trace16:47
blueCmdstekern: that's because it jumps back to the first 0x816:48
stekernI've just woke up from a nap, so I might be mistaken ;)16:48
blueCmdit somehow jumps to e016:48
blueCmdwhich is nop 0x816:48
stekernah, now I see16:48
blueCmdstekern: believe me, I thought I was on drugs when I first spotted this16:49
stekernbut oth, it's not so strange, l.nop 0x9 turns off trace, right?16:49
stekernso you're just missing the trace from between ;)16:50
blueCmdah16:50
blueCmdhah16:50
blueCmdbut that code should only execute once16:50
blueCmdI will remove the nop and see what happens16:51
blueCmdI guess I expected the l.nop 9 to be printed as well16:51
stekernyeah, it would have been easier to spot what happens if it would16:54
blueCmdaha17:04
blueCmdthe function was called twice!17:04
* blueCmd facepalms17:05
_franck_blueCmd: git://openrisc.net/jonas/gdb , regset branch17:05
_franck_"The jist of my changes is adding17:05
_franck_tdesc/feature descriptions (as you have done) and getting GDB to use17:05
_franck_regsets to access registers instead of poking around in memory."17:05
_franck_I'll take care of the tdesc thing17:05
_franck_"It's a work in progress so that17:06
_franck_commit messages stink, but what I've got there actually works on a17:06
_franck_recent Linux."17:06
blueCmdaha, cool17:06
blueCmdstupid locales, oh well - time for a weekend break. bye bye17:11
juliusbjeremybennett: I'm around, back in the UK now. Haven't been monitoring IRC lately, been very busy, but things should return to normal soon23:40
juliusbblueCmd: wow you sound like you're a fair way through your EGLIBC port, impressive23:43
juliusbjeremybennett: interesting article about Beyond pushing a new royalty-free processor. Good luck to them, I say, but it's unlikely to challange ARM I believe. ARM offer too much these days in the way of development and debug ecosystem, you just can't get anywhere near their overall oferring, even if you are shelling out millions a year in royalties to them. I think you're going to have a hard time selling something with 23:50

Generated by irclog2html.py 2.15.2 by Marius Gedminas - find it at mg.pov.lt!