Sunday, 2019-12-01

*** tpb has joined #litex00:00
*** rohitksingh has joined #litex00:12
*** freemint has joined #litex00:39
*** freemint has quit IRC01:28
*** freemint has joined #litex01:37
scanakciare there some constraints when setting the memory map?  I would like to set memory map as provided in the figure. https://usercontent.irccloud-cdn.com/file/cJOYWUih/memmap.png02:44
scanakciI am getting bunch of "relocation truncated to fit" errors. I come across some constraints related to RISCV linker, but could not fix the issue.02:45
scanakci(when I am compiling litex-bios for simulation)02:46
scanakcisetting main_ram to 0x8000_0000 fixes the issue, but I need my rom to reside at that address02:47
sorearwith both of the currently implemented riscv64 code models, data and text must be less than 2GB apart04:51
sorearif you need rom to be at 80000000, maybe put ram at 4000000004:51
sorearOr have one at 0 and the other at 4000000004:52
*** nrossi has joined #litex06:42
*** _whitelogger has quit IRC07:51
*** _whitelogger has joined #litex07:54
*** _whitelogger has quit IRC08:09
*** _whitelogger has joined #litex08:12
*** freemint has quit IRC12:26
*** freemint has joined #litex13:44
*** rohitksingh has quit IRC13:55
kbeckmannOn a similar topic, is it possible to have a parent-child like mapping of memory, e.g. main_ram @ 0x8000_0000 which consists of foo_ram @ 0x8000_0000 with length 0x10000, and bar_ram at 0x8000_0000 with length 0x8000, thus creating main_ram at 0x8000_0000 with the length 0x1800014:19
kbeckmannoh i mean of course that bar_ram is located at 0x8001_000014:20
kbeckmannthe reason that i want this is to be able to expose a large contiguous memory area that consists of multiple external different ram modules.14:21
*** _whitelogger has quit IRC15:30
*** _whitelogger has joined #litex15:33
*** freemint has quit IRC17:00
*** nrossi has quit IRC17:11
*** futarisIRCcloud has quit IRC17:12
*** Finde has quit IRC17:12
*** flammit has quit IRC17:12
*** st-gourichon-fid has quit IRC17:12
*** gruetzkopf has quit IRC17:12
*** goran-mahovlic has quit IRC17:12
*** nrossi has joined #litex17:13
*** futarisIRCcloud has joined #litex17:13
*** Finde has joined #litex17:13
*** flammit has joined #litex17:13
*** st-gourichon-fid has joined #litex17:13
*** gruetzkopf has joined #litex17:13
*** goran-mahovlic has joined #litex17:13
*** freemint has joined #litex17:29
scanakcithanks @sorear. I will keep that in my mind.18:01
scanakciI changed the layout  and tried with couple of  different memory maps. However, still getting the same errors.18:01
scanakciMy observation is  that  setting  rom to 0x8000_0000 is causing this problem.18:02
sorearyes, why do people do that?  it seems like a terrible idea18:02
sorearis everyone just blindly copying berkeley or is there an actual reason not to put ram at 0x4000_0000?18:03
soreardon't use 0x8000_0000 or higher for anything if you can help it18:04
sorearif you have more than 1GB of RAM you need to think carefully about what's going to be accessible before MMU setup.  after MMU setup, text and data should be virtually adjacent to each other18:06
sorearif you don't have a MMU at all, you probably don't need more than 31 bits for physical addresses18:06
sorearbasically don't use 0x8000_0000 for *anything* and you shouldn't get that error18:07
scanakcithank you @sorear.18:08
sorearI'm not upset at you I'm upset that all of the guides to copy put RAM and ROM at the *worst possible* addresses18:09
*** freemint has quit IRC18:34
*** freemint has joined #litex19:56
_florent_kbeckmann: not sure there is a convenient way actually to do parent-child like mapping. One thing you can do is use add_memory_region with type="linker" to do something similar (you have a look at https://github.com/enjoy-digital/litex/pull/285)20:05
tpbTitle: [RFC] Linker region concept by mateusz-holenko · Pull Request #285 · enjoy-digital/litex · GitHub (at github.com)20:05
*** CarlFK has quit IRC20:18
kbeckmannthanks _florent_ , will try it out!20:24
*** freemint has quit IRC20:29
*** freemint has joined #litex20:29
*** freemint has quit IRC20:52
*** rohitksingh has joined #litex21:17
*** nrossi has quit IRC21:22
*** freemint has joined #litex21:37
scanakciI guess I am close to running bios on blackparrot. At least, I should be able to print LITEX logo very soon. Currently, I can see that Blackparrot fetches instructions/data properly from ROM/SRAM. I verified that BP is reaching to main function in main.c.22:07
*** CarlFK has joined #litex22:09
scanakciThe problem is that nothing is printed to the console. I see that BP calls  printf, putsnonl, uart_write in order. My understanding is that uart_write is the function that is supposed to show texts on the screen.  uart_write is performing a csr write as far as I see in the generated/csr.h file.22:11
*** CarlFK has quit IRC22:14
scanakciI am using uart_polling as a side note. I had tested it before with Rocket and it worked properly.22:16
*** freemint has quit IRC22:53
*** rohitksingh has quit IRC23:30
*** rohitksingh has joined #litex23:33

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