IRC logs for #openrisc Sunday, 2013-10-20

--- Log opened Sun Oct 20 00:00:47 2013
poke53281Slowly I am getting used with git.03:26
poke53281great tool. In five years I guess it will be it's own operating system. ;)03:27
poke53281stekern: 7 patches so far. But the speed improvement is less than 10%. But I know why. It will take some time for the final patch which gives you then a factor of two or more.03:31
poke53281Let's hope Jia Liu is not shocked.03:31
PowermaniacIS a bootloader up and running for ORPSoCv3?03:58
PowermaniacWould it be possible to use the Javascript simulation of OpenRISC for now to build a linux distro on top of?04:07
PowermaniacCan QEMU run ORPSoCv3/OpenRISC?04:18
poke53281Hi Powermaniac04:23
poke53281About the bootloader you have to ask others. At the moment we have built in kernel parameters.04:24
poke53281So, probably not.04:24
poke53281The Javascript emulatlor is closely04:25
poke53281The Javascript emulator loosly based on the distribution Linux from Scratch.04:25
Powermaniacpoke53281: Okay but can QEMU run OpenRISC? And thanks!04:26
Powermaniacpoke53281: Talking to a guy on #debian about it at the moment as I wish to help someway and maybe try setting up Debian for OpenRISC04:26
poke53281These are the scripts I am using at the moment04:27
poke53281QEMU can run Openrisc, yes. But at the moment it is slower than jor1k.04:27
PowermaniacAhhh okay04:27
poke53281Yes, this is possible. :)04:27
poke53281But I am working on it.04:27
poke53281Yesterday and today I send 7 patches improving it.04:28
poke53281So in a few weeks it will be much much faster.04:28
Powermaniacpoke53281: So you are working on porting Debian to openrisc/ORPSoCv3 or?04:28
PowermaniacOh youa re improving the processor speed04:28
poke53281At the moment it is also not very stable. I have found several problems which I am correcting.04:29
poke53281No port. But a port of Debian would be fantastic :)04:29
PowermaniacYeah I want to help so I was going to try and develop a port of Debian, probably too big a task for me but I will try anyway04:29
poke53281Yes, it is a big task. But you can learn a lot.04:30
PowermaniacSo I assume I can download jor1k and use that simulation on my computer right? It's all opensource? I'm also not sure if it is being updated along with ORPSoCv3 is it?04:30
poke53281Yes, all opensource.
poke53281These are the main repositories04:31
PowermaniacYeah I know about the main respositories, just wasn't sure jor1k was. So thanks. Need to do lots of reading then04:31
poke53281I am not sure what you mean with "updated along". There is the or1k specification and both are following these specifications.04:32
poke53281But yes, there is some connection. E. g. when hard tlb refill will be included it will be implemented in both projects.04:32
PowermaniacOh so jor1k isn't ORPSoCv3 it's just openRISC?04:32
PowermaniacAlso do you have a link to the QEMU simulation?04:33
poke53281It's not ORPSoCv3. I am using basically another SOC. But the differences are minimal for the Linux kernel.04:33
PowermaniacWait so you are s-macke?04:34
poke53281install QEMU under Linux and search for qemu-or32 and qemu-system-or3204:34
poke53281<- s-macke04:34
poke53281About the ORPSoC stuff you have to ask stekern.04:34
PowermaniacOkay need to hop on over to Debian then to get this all running04:34
poke53281Debian maybe has a very old version of QEMU.04:35
poke53281But you an get it also for Linux. No problem04:35
poke53281for Windows I mean04:35
PowermaniacOkay. So be right back just hopping over to Debian04:35
poke53281There are several binaries available04:35
powermaniacOaky back04:38
poke53281if you want something to test04:44
poke53281start with04:44
poke53281qemu-or32 ./nbench04:44
powermaniacOkay shall do04:44
powermaniacFirst I need qemu installed though right?04:45
poke53281or qemu-system-or32 -m 128 -nographic -kernel vmlinux04:45
poke53281"sudo apt-get install qemu" or something similar04:46
powermaniacOkay downloading04:46
powermaniacThanks for all the help by the way04:46
poke53281You are welcome. Two hours left to ask questions :)  Then I have to sleep.04:47
powermaniacWhat is the difference between the two qemu commands04:49
powermaniacWell that was weird04:49
powermaniacAm I back?04:49
powermaniacOkay seems I am04:50
poke53281qemu-user can be used to dirrectly start executables compiled for the OpenRISC platform.04:50
powermaniacAnyway I was wondering what the difference was between the two qemu commands were?04:50
poke53281nbench is a static binary04:50
poke53281Look at the output of "file nbench"04:50
poke53281and "file vmlinux"04:50
poke53281vmlinux is a compiled linux kernel.04:51
powermaniacAhh right04:51
powermaniacSo I assume I need to add qemu to the command line right?04:51
poke53281I don't understand the question.04:52
powermaniacUmm, I mean to the PATH variable04:52
powermaniacAs it doesn't recognise the command qemu-or32 ./nbench04:52
poke53281Debian did everything neessary for you04:52
poke53281which qemu version did you install.04:53
powermaniacLet me check04:53
powermaniacOkay I think it is version 1.0.004:55
poke53281You know what I don't like about Debian. It installs two or three year old software.04:56
powermaniacIs there a particular way to check what version of software is installed?04:56
poke53281I don't know how this works in Debia. But you have to install qemu from an unstable branch.04:56
powermaniacAs I may have gotten it all wrong04:56
poke53281Maybe qemu -v04:57
poke53281or qemu --version04:57
poke53281or qemu --help04:57
powermaniacOkay it's version 1.1.204:57
poke53281I am sure there is an easy way in Debian.04:57
poke53281This is still too old.04:57
powermaniacI could just compile qemu from source?04:57
poke53281QEMU 1.6.1 is out04:57
poke53281Yes, with the result, that you have to compile libffi and libglib too. Because QEMU depends on these libraries. And they are also too old in Debian.04:58
powermaniacOkay going to compile from source then, easy guide on how to as well on the wiki04:59
poke53281But maybe there is an unstable repository you can use. If you have Windows there is already an compiled version.04:59
poke53281Good try it.04:59
poke53281./configure && make && make install05:00
powermaniacOh I was on Windows now I'm on Debian and it seems easier to use it from within Debian/well easier inthe sense to make a linux distro it will be easier in debian as all the commands to do so are in there05:00
poke53281Ok, good luck05:03
powermaniacLooks like I need pkg-config05:06
powermaniacOkay got that now I need glib 2.1205:08
poke53281all that dev tools. Debian is not optimal for developers by the way.05:08
poke53281good but not optimal.05:09
poke53281There are other distros who install automatically all -dev packages for example.05:10
poke53281And they are newer but also more unstable of course.05:10
powermaniacOh, hmm.05:10
poke53281But Debian is still good. Installing a new distribution is not worth the time you spending.05:11
powermaniacI like Debian because of there 'pledge' to be open source05:11
poke53281Yes, like hundred other distros too. ;)05:12
powermaniacOh now I need pixman05:12
poke53281Yes, but this should be fine in Debian.05:12
poke53281I think you even disable it in the ,/configure options.05:13
powermaniacHmm, oops?05:13
poke53281The QEMU openrisc emulator does not have any screen05:13
powermaniacWeird it said I needed DTC devel package, I installed it and it still says I don't have it05:16
poke53281What is DTC?05:18
powermaniacdevice tree compiler I believe05:18
poke53281never heard05:18
powermaniacMaybe I need a reboot05:18
powermaniacBe right back05:18
powermaniacHmm still says I don't have DTC devel installed05:26
poke53281qemu configure tell you this?05:29
poke53281Which QEMU version did you download? 1.6.1?05:30
powermaniacLet me check again05:31
powermaniacWTF it's version 1.1.2 again05:31
powermaniacOkay think I may have fixed it will check the version again though05:34
powermaniacVery slowly downloading the new version of it from what I can tell and all it's dependancies05:35
powermaniacWell that didn't work05:55
powermaniacStill version 1.1.205:55
poke53281??? What do you mean, after make isntall?05:59
poke53281"make install"05:59
poke53281You have to deinstall the debian QEMU version.05:59
powermaniacAfter using this guide:
powermaniacI tried removing qemu and it still says version 1.1.2 is on the system05:59
powermaniacI even tried purging it05:59
powermaniacI will try cloning the git source files again06:00
powermaniacNow I've purged qemu06:01
poke53281"ls bin/debug/native" ?06:01
poke53281What do you get?06:01
powermaniacI get config.log06:01
poke53281Nothing else?06:01
poke53281and "make" worked in this folder?06:02
poke53281I can't believe it.06:02
poke53281Looks like the configure ist still showing you an error.06:02
powermaniacNo it didn't06:02
poke53281Then, you haven't compiled it yet06:03
powermaniacI got to the configure step and that's where I needed all these dependencies06:03
powermaniacAnd it just wouldn't work06:03
powermaniacAs I needed DTC so I installed that and still it kept telling me I didn't have DTC06:03
powermaniacHa, sort of funny nothing ever goes smoothly for me when trying to do things like this xD06:04
poke53281how did you install it?06:04
poke53281This is normal.06:04
poke53281Especially under Debian.06:04
powermaniacThe first time I installed it by doing apt-get install qemu. Which gave me version 1.1.2 which you said was too old06:04
powermaniacSo I tried that guide
poke53281no, how did you isntall dtc?06:04
powermaniacAnd got to the Configure QEMU and start the build. step and it was like nope you don't have this and this06:04
powermaniacI typed in apt-get install device-compiler-tree06:05
powermaniacSorry device-tree-compiler*06:05
poke53281try "device-compiler-tree-dev"06:06
poke53281I mean device-tree-compiler-dev then06:08
powermaniacREsult of that was: E: Unable to locate package device-tree-compiler-dev06:09
powermaniacYeah that was what I got ^ for that06:10
poke53281Ok, try to install only the or32 stuff.06:11
powermaniacDon't I need qemu working though?06:11
powermaniacI can't compile qemu without DTC it seems06:12
poke53281./configure --target-list=or32-softmmu,or32-linux-user06:12
powermaniacLet me see if there is a qemu irc channel06:12
poke53281try this06:12
poke53281dtc is only for special firmware for some x86 stuff.06:12
powermaniacThat seemed to work06:13
powermaniacOkay so now what06:18
poke53281you should have qemu-or32 somewhere06:19
powermaniacOkay I believe it is bin/debug/native06:20
poke53281of you have to type make if you haven't done so06:20
powermaniacJust checked that folder and that is where it appears to be06:20
poke53281by the way. There is no need to compile with --enable-debug at the moment06:21
powermaniacOh okay06:21
poke53281It slows the whole emulator down06:21
powermaniacOkay so the folders are there:
powermaniacI tried typing make and it gave me an error though, so is that needed now or isn't it?06:22
powermaniacThis is what I got from make:
powermaniacAhh I think I know why06:24
poke53281sudo apt get is you friend06:25
poke53281sudo apt-get install linux-headers-$(uname -r)06:25
powermaniacNo I know what the problem is I did that command in the wrong folder06:26
powermaniacIt is looking for it in the wrong folder anyway06:26
powermaniacGot it working now so all good06:27
powermaniacEverything was in /qemu/bin/debug/native and it was looking for /linux-headers in /qemu06:27
powermaniacSo I just deleted the stuff in /qemu/bin/debug/native and re ./configured it in /qemu and then ran make again06:28
powermaniacNowit's working away06:28
powermaniacOkay it's done06:28
powermaniacNow do I try qemu-or32 ./nbench?06:28
powermaniacis qemu-0r32 a directory?06:29
powermaniacAs I think it might be probaly why it doesn't recognise the command06:29
poke53281bin/debug/natice/or32-softmmu/qemu-or32 ./nbench06:29
poke53281nbench should be in you current folder.06:30
powermaniacqemu-or32 isn't a folder it seems06:32
powermaniacor32-softmmu is06:32
powermaniacthat's a file atleast06:33
poke53281this should be correct06:33
powermaniacYep it is06:34
powermaniacOhhh nbench was that file I downloaded earlier06:35
poke53281'An OpenRISC executable06:35
poke53281You should see a small benchmark program.06:37
poke53281Which takes around 5-10 minutes06:37
powermaniacWeird permission is denied06:38
powermaniacI'm as root so...06:38
powermaniacError while loading ./nbench: Permission denied06:39
poke53281chmod u+x nbench06:39
poke53281you have to gibe nbench executable rights06:39
powermaniacThere we go06:40
powermaniacWas just reading and looking at that then when you said that06:40
powermaniacOkay the benchmark is running I believe06:40
powermaniacThank you once again for all the help. This community is so friendly and helpful =D06:41
poke53281:) You are welcome06:41
poke53281the vmlinux file I gave will maybe not work.06:42
powermaniacOh okay06:42
powermaniacWhy is that?06:42
poke53281try it. But you could get segmentation fault or bad address error06:43
poke53281The QEMU openrisc emulator does not check the boundaries of an array.06:43
poke53281I send a patch today to the mailing list06:43
powermaniacAlso someone on #Debian OFTC asked if there is a working compiler for OpenRISC/ORPSoCv3 is there?06:43
powermaniacOh okay06:43
poke53281Yes, the toolchain06:44
powermaniacOH good06:44
powermaniacThis is all very interesting, even though I don't completely understand it, probably why I find it so interesting06:44
poke53281with manual how to install it06:44
powermaniacOh I already have that installed06:44
powermaniacI think06:44
powermaniacI installed OpenRISC a while back, to use GTKWave with it06:45
powermaniacThanks to stekern06:45
poke53281I am a terminal junkie when I am using Linux. I don't know GTKWave.06:45
poke53281is or1k-linux.gcc working?06:46
poke53281does your terminal reckignizes it as command?06:46
poke53281or or1k-linux-uclibc-gcc06:46
powermaniacSadly it doesn't seem to recognise either06:47
powermaniacSure I had it working before...06:47
poke53281Because the path variable is missing06:47
poke53281You have to set it to correct folder.06:47
powermaniacOh this is the result of the benchmark:
poke53281Yes, more or less the speed of an old Pentium06:49
poke53281If you try the i386 QEMu emualtion you will reckignize that this is more than 20-40 times slower.06:50
powermaniacThat's not too bad really06:51
powermaniacFor something being worked on by only a few people from scratch06:51
poke53281Yes, but the emulator could be much faster. At the moment I am working on this.06:52
powermaniacOh right06:52
poke53281Do you know how to write in C?06:52
powermaniacHow fast is in on an FPGA?06:52
powermaniacSadly no, I want to learn how to though06:52
powermaniacJust learnt Python though planning to go onto C next06:52
poke53281Not sure, You have to ask stekern.06:52
poke53281But it should be much faster06:53
powermaniacSo now I should try the vmlinux file I assume06:53
poke53281Yeah try it06:53
poke53281Which processor you are using? The benchmark gives faster results than mine.06:54
powermaniaci5 2500k at 3.30Ghz I believe06:54
powermaniacQuad core*06:55
poke53281Ok, then it is probably the virtual machine I am using. This slows it down.06:55
poke53281I have a Core i7.06:55
powermaniacYeah this was a gaming computer that I built myself but I don't really game much anymore so06:55
powermaniacMainly just learn new stuff constantly instead of gaming06:55
poke53281programming games is much more fun than playing then ;)06:56
powermaniacOnly sort of new to programming although I tried to learn JAva three times and gave up on it when I was a bit younger06:57
powermaniacBloody too verbose06:57
powermaniacIs this command for folder or32-softmmu: qemu-system-or32 -m 128 -nographic -kernel vmlinux06:58
powermaniacAs that is where qemu-system-or32 is located06:58
powermaniacMainly stopped trying to learn Java as every time I got busy or in the end it became boring because I had to start again so many times to re-learn the basics. So now instead I'm learning Python, almost finished learning Python from Udacity and Learn Python The hard WAy06:59
poke53281Yes, python is a little bit easier as you don't need a compiler.07:00
poke53281But it's damn slow.07:00
powermaniacHmm I keep getting this error: QEMU: couldn't load the kernel 'vmlinux'07:01
poke53281My work has a lot do with physical simulations. If I would program them in python I would be long dead before even one calculation would be finished.07:01
powermaniacI assume that's why everyone seems to program in C because it is so fast.07:02
poke53281Yes, In principle Intel defines what is fast today. They have the fastest CPUs and the fastests compilers. So you the choice between C/C++ and Fortran if you want to program fast.07:03
poke53281the vmlinux must be in the same folder from where you start the emulator.07:03
poke53281like nbench07:03
powermaniacWait worked it out07:03
powermaniacHad to give it the location of the file07:04
powermaniacNow it gives me this error though: Bad ram pointer 0x7f57256e011c07:04
poke53281Yes, exactly.07:04
powermaniacIs that the error you spoke of before?07:04
poke53281and this is the patch07:05
powermaniacSO I asume it will be fixed soon?07:05
powermaniacI guess I need that working before I can begin building a linux distro for it all07:06
poke53281one day to four weeks typically07:06
poke53281but you can apply it yourself07:06
powermaniacOn Monday I go to UniSA to see what some students are doing there in regards to building there own ASIC designs and implementing them on an FPGA maybe I could ask the professor for tips regarding implementing a linux distro...See I'm only a high school student07:07
poke53281Copy the content beginning from "The mtspr" till "" into a file07:07
powermaniacOh I can apply it myself can I07:07
poke53281for example in a file called mypatch.patch07:07
poke53281got to the qemu folder07:07
poke53281and try "git apply /path/to/patch/mypatch.patch"07:07
poke53281This should do it07:08
poke53281The Linux distro part is really part. You should know that this requires programming.07:08
poke53281in C07:08
poke53281There will be errors and you have understand them .07:09
powermaniacOkay so I should start learning C asap then07:09
poke53281In principle yes. But also learning how the tools in Linux are working.07:10
powermaniacOkay so I got an error applying the patch: fatal: patch fragment without header at line 26: @@ -89,7 +89,7 @@ void HELPER(mtspr)(CPUOpenRISCState *env,07:10
poke53281,configure make and gcc07:10
powermaniacOh okay07:10
powermaniacSo nobody else is planning to work on porting a distro to ORPSpCv3 are they? just wondering as then I won't be using my time when someone else may already be started and complete it before me07:11
poke53281try "git am < /path/to/patch/mypatch.patch"07:12
poke53281No one is working on it right now.07:12
powermaniacOh okay07:14
powermaniacPatch does not have a valid e-mail address.07:14
powermaniac LOL07:14
powermaniacOkay just added .com to your fake email address and that seems to have fixed it07:15
powermaniacWait what is this patching exactly, is it just patching vmlinux?07:15
powermaniacOr do I need to be in the qemu folder if the qemu folder I got this result: previous rebase directory /home/powermaniac/qemu/.git/rebase-apply still exists but mbox given.07:16
poke53281no it is patching QEMU.07:16
poke53281you to type make again07:16
poke53281you should be in the qemu folder when you apply the patch, yes07:16
powermaniacStill a bad ram pointer supposedly according to the error07:17
powermaniacBad ram pointer 0x7f77e70e011c07:17
powermaniacDid make again07:17
powermaniacAnd then did make install07:17
poke53281Ok, then the patch was not applied07:17
poke53281try to use git apply but his provide a patch file which is beginning from "diff --git ......07:18
poke53281...but this time ....07:18
powermaniacThat didn't work either same error as this:  previous rebase directory /home/powermaniac/qemu/.git/rebase-apply still exists but mbox given07:19
poke53281Don't know what happens07:20
poke53281try "git reset --hard"07:20
poke53281and try to apply the patch agagin07:20
powermaniacSame error07:20
poke53281with git am or git apply?07:20
powermaniacgit am07:21
poke53281try git apply07:21
powermaniacgit apply returns this: fatal: patch fragment without header at line 18: @@ -89,7 +89,7 @@ void HELPER(mtspr)(CPUOpenRISCState *env,07:21
powermaniacCan I not apply it directly07:22
powermaniacLike just go into the file you are editing, and place that code in it?07:22
poke53281you can, but this is normally not necessary07:22
poke53281Ok, probably it depends on my previous patches.07:23
powermaniacAhh okay07:23
powermaniacSo I assume you have your own custome qemu OpenRISC running07:24
poke53281Ahh, yes07:24
poke53281apply all of them: git apply /path/to/patches/*.patch07:28
powermaniacYou sure that url is correct I'm getting a 404 Not Found07:28
poke53281try it again07:28
powermaniacThere we go07:28
powermaniacShould I remove mypatch.patch now?07:29
powermaniacAs everything worked but that one07:30
powermaniacerror: patch failed: target-openrisc/translate.c:90407:30
powermaniacerror: target-openrisc/translate.c: patch does not apply07:30
powermaniacI think it will work without that, just tried make and it is re-making it07:31
powermaniacYep it worked07:31
powermaniacvmlinux is now working!!!07:31
powermaniacHere is the code that it output if your interested:
poke53281you have to kill the process in another terminal using "killall qemu-system-or32"07:33
powermaniacWoops that isn't all of it07:33
poke53281"High risk website blocked"07:33
powermaniacThis might work:
poke53281Yes, this is correct07:35
poke53281try "cd cmatrix"07:35
powermaniacfrom within another terminal or from within the current terminal that is asking me to press Enter?07:35
poke53281in another terminal.07:36
powermaniacDo I need to be in a particular folder?07:36
poke53281In the terminal qemu is now emulating the terminal of the vmlinux07:36
powermaniacOh I got permission denied inside the qemu vmlinux terminal?07:36
powermaniacDo I need to be root, if so what is the password?07:37
poke53281You are already inside the terminal07:38
poke53281You get you status by the command "who"07:39
powermaniac~ # who07:39
powermaniacroot            console         old     Jan  1 00:05:1407:39
poke53281permission denied? what command did you try?07:39
powermaniac~ # ./cmatrix           -sh: ./cmatrix: Permission denied07:39
poke53281"uname -a" gives you the processor info07:40
poke53281and Linux version07:40
poke53281"cat /proc/cpuinfo"07:40
poke53281compare with the result you get in your Debian distribution07:40
powermaniac~ # uname -a            Linux openrisc 3.11.0-rc3-10812-gbb0f7a5-dirty #7 Wed Oct 16 22:06:00 UTC 2013 openrisc GNU/Linux07:40
powermaniacpowermaniac@Powermaniac-PC:~$ uname -a          Linux Powermaniac-PC 3.2.0-4-amd64 #1 SMP Debian 3.2.46-1+deb7u1 x86_64 GNU/Linux07:41
powermaniacOkay not going to copy paste the cat /proc/cpuinfo as it is huge lol07:41
poke53281Not in openrisc07:41
powermaniacWell yeah that is smaller07:41
poke53281Yes, the x86 cores have a lot of options.07:42
powermaniacSo is openrisc 32-bit 64-bit or something else entirely?07:42
poke5328132 bit07:43
powermaniacAhh okay07:43
poke53281"gcc hello.c"07:43
poke53281then "./a.out"07:43
powermaniacSo say there was the funding to produce an ORPSoCv3 ASIC would it be competitive with todays processors and PSoC's, etc?07:43
powermaniacMy first C Hello World!!!!07:44
poke53281No one knows. how fast that would be.07:44
powermaniacOh okay07:44
poke53281Ask stekern. But with 20000 Dollar we get an interview with a manager who will tell you that you can't build an ASIC with 20000 Dollar.07:45
poke53281Ok, almost 1AM. I have to go to sleep07:47
poke53281I would like to have an ASIC. Bit then we need more support.07:49
poke53281Something like a kickstarter project where we get 100000 Dollar.07:49
powermaniacGoodnight then, and thanks again07:49
poke53281And then you still have to design it. And I an complete noob doing this. I don't even have an FPGA.07:50
poke53281goodnight. Put questions here in the chat. I will not be offline.07:51
powermaniacOh okay, bye!07:52
stekernpowermaniac: yes, we hav a bootloader08:09
stekernactually several, u-boot and barebox08:09
powermaniacstekern: Hi, sorry disappeared a bit after poke left.08:16
powermaniacstekern: Ahh U-Boot that's good.08:17
powermaniacstekern: Be right back jumping on Windows 7 as I don't have Debian fully running the way I want yet and I have things I need to do on Windows 708:17
olofkrokka: What build system are you using orpsocv2, orpsocv3 or something else?08:32
olofkstekern: I agree. systems are meant to be cheap, but they're not there quite yet. jinja looks like a nice addition.08:34
stekernolofk: good, let's see if hansfbaier wants to take on that task after he's done with i2c and spi08:35
olofkstekern: I'm not sure about the best way to do it though. Perhaps put jinja templates in each of the cores and add some tag to the .core file to indicate that it has a template08:51
olofkBut I'm not sure how to handle jinja-less cores then08:52
olofkSo for that reason it might be best to start with adding jinja support to the top-levels instead.08:54
stekernyeah, it's not completely clear to me neither, but as you say, the templates kind of belongs to the cores09:09
olofkNeed to think about this a bit, but I like the idea.09:16
olofkGoing out for a while09:16
-!- rfajardo_ is now known as rfajardo09:20
olofkok, I think I got it now.11:25
olofkWe start with having templates on the top level11:26
olofkIf a core has a template for it's instantiation, we import it11:26
olofkI want to push as little orpsoc-specific requirements as possible down to the cores11:27
olofkAnd I need to get started on the orpsoc "generation" framework11:28
olofkA generator in this case is something that transforms a description to hdl code, like coregen, qsys, wb_intercon_gen and bootrom for example11:32
stekerntha makes sense, to have a common way for that, even if the "backend" differ11:33
olofkcoregen and qsys will be built-in into orpsoc, but wb_intercon_gen and will register themselves as generators when the core files are parsed11:33
lkillersounds great11:34
olofkSomething like this (totally made up example)
olofkin the core file11:38
olofkand wb_intercon will need some extra section that indicates it contains a generator, and how it should be invoked11:40
olofkRealize now that I moved away a bit from the original jinja discussion :)11:40
olofkbtw, has anyone figured out how to automate megawizard?11:41
stekernI haven't tried, but since they keep the core info in the generated hdl, what are you going to automate it from?11:44
olofkstekern: Oh, I thought there was some description file you used as input.11:45
olofkNot saying we need to automate that in orpsoc. Just curious since I know how coregen does it11:45
rfajardostekern, testing your suggestion12:45
rfajardoolofk, how should I proceed to try orpsocv3?13:12
hawi_hi, is anyone having problems running or1k linux kernel on latest qemu?13:53
hawi_I receive the message: Bad ram pointer 0x7f52688ea11c. Aborted13:54
hawi_If I check out an older revision, it works13:57
hawi_I did a bisection and the commit that introduces this is:14:03
hawi_5cd8f6210f83db15702e81b91e40e7079608e6f3  tcg: Move helper registration into tcg_context_init14:03
hawi_sorry, I meant: 6e085f72c6d331fb0e9fc69e3061cd1e5893d9e4 tcg: Use a GHashTable for tcg_find_helper14:05
olofkrfajardo: Download ( and install (autoreconf -i && ./configure && make && make install) orpsoc14:18
olofkGet orpsoc-cores (
olofkCreate an empty directory and create a file called orpsoc.conf in there14:19
olofkIn orpsoc.conf put:14:19
olofkAfter that you can start by trying to run a test simulation on one of the cores that has a testbench14:20
olofkoh.. wait. Start by running "orpsoc list-cores" to verify that it is installed and has found your cores14:21
olofkThen you can run a core simulation, for example: orpsoc sim wb_intercon14:21
olofkTo run a testcase from an elf-file on or1200, you can run orpsoc sim or1200-generic --or1k-elf-load=/path/to/file.elf14:23
olofkor if you have quartus installed you can build a de0_nano or a de1 image with orpsoc build de0_nano (or de1)14:24
rfajardowow, nice14:44
olofkrfajardo: Did you try it?14:45
rfajardoI had already gone through the steps for installation. But not the ones for simulation.14:45
rfajardolooks really good14:47
rfajardoIn which environment do you run the elf? The generic system I suppose, is its testbench pre-compiled or something? You use icarus, right?14:47
olofkAh.. crap. I haven't remove the "generic" sysem yet. It has bitrotted a bit14:49
olofkBut or1200-generic works fine14:49
olofkWhen you run orpsoc sim, it checks if the test bench is already built, in which case it only runs it without rebuilding14:50
olofkicarus is the default simulator for or1200-generic, but you can run orpsoc sim --simulator=modelsim instead14:50
rfajardocongratulations on your system olofk14:51
olofkI'm not sure if that answered your question though :)14:51
rfajardoolofk, yes.14:51
rfajardoolofk, that seems to provide a perfect environment for developing openrisc. I'm looking forward to use it.14:51
olofkrfajardo: Thanks. It has finally come alive since we talked about it in the city without ATM machines :)14:51
rfajardoI gotta grab a Xilinx USB cable.14:52
rfajardoolofk, hell yeah :P14:52
olofkI (or someone) got to implement Xilinx support in orpsocv3 :(14:52
rfajardowas really a pity that I had to skip the recent conference.14:52
rfajardoI own a Spartan3A 1800 DSP. But I haven't touched it in ages.14:53
rfajardoI could as well go for the best supported platform so I don't have to port things oevr and over again.14:53
olofkrfajardo: Yes, we missed you, but hope to see you next year, or at some other event14:54
rfajardoolofk, yes, I'm definitely going to show up next time.14:54
rfajardoDo you have the whole palette of options for configuring the Linux kernel for OpenRISC? Are there some ready to use template or something?14:55
--- Log closed Sun Oct 20 16:27:49 2013
--- Log opened Sun Oct 20 16:28:02 2013
-!- Irssi: #openrisc: Total of 31 nicks [0 ops, 0 halfops, 0 voices, 31 normal]16:28
! [freenode-info] channel flooding and no channel staff around to help? Please check with freenode support:
-!- Irssi: Join to #openrisc was synced in 19 secs16:28
hansfbaierimpure_hate: ever tried pure love?19:51
--- Log closed Mon Oct 21 00:00:49 2013

Generated by 2.15.2 by Marius Gedminas - find it at!