*** tpb has joined #timvideos | 00:00 | |
mithro | shenki: \o/ | 00:04 |
---|---|---|
CarlFK | mithro: this cable works with the opsis: www.monoprice.com/product?c_id=102&cp_id=10240&cs_id=1024014&p_id=13593 | 00:13 |
*** CarlFK has quit IRC | 00:45 | |
*** CarlFK has joined #timvideos | 01:30 | |
*** ChanServ sets mode: +v CarlFK | 01:30 | |
*** wanig has joined #timvideos | 01:47 | |
*** wanig has quit IRC | 01:59 | |
*** wanig has joined #timvideos | 02:23 | |
*** wanig has quit IRC | 02:27 | |
*** wanig has joined #timvideos | 02:27 | |
*** sb0 has quit IRC | 03:53 | |
*** rohitksingh_work has joined #timvideos | 04:02 | |
*** Bertl_oO is now known as Bertl_zZ | 04:53 | |
*** sb0 has joined #timvideos | 06:02 | |
*** fumblehool has joined #timvideos | 06:05 | |
*** CarlFK has quit IRC | 07:01 | |
*** CarlFK has joined #timvideos | 07:23 | |
*** ChanServ sets mode: +v CarlFK | 07:23 | |
*** cr1901_modern has quit IRC | 07:37 | |
*** fumblehool has quit IRC | 08:09 | |
*** sb0 has quit IRC | 08:18 | |
shenki | mithro: progress: | 08:54 |
shenki | #0 calibrate_delay_converge () at init/calibrate.c:196 | 08:54 |
shenki | #1 calibrate_delay () at init/calibrate.c:303 | 08:54 |
shenki | #2 0x40000b2c in start_kernel () at init/main.c:618 | 08:54 |
mithro | shenki: I'm not sure what that means, but yay!? | 08:54 |
shenki | mithro: http://pastebin.com/raw/XJuwmBEX | 08:55 |
shenki | mithro: progress over last night :) | 08:55 |
shenki | stuck calibrating the delay loop | 08:55 |
shenki | it also means the uart is working | 08:56 |
mithro | shenki: is this the upstream qemu uart or key2's qemu uart? | 08:56 |
shenki | mithro: upstream | 08:57 |
mithro | shenki: Okay, I think that isn't compatible with the misoc uart? | 08:57 |
shenki | no idea. it's the milkymist uart | 08:57 |
shenki | i updated it to modern linux, but otherwise it's unchanged | 08:57 |
shenki | mithro: where was key2's qemu? | 08:57 |
mithro | bitbucket | 08:58 |
shenki | mithro: my plan was to get the milkymist port of the kernel working, and then move it over to our hardware | 08:58 |
mithro | https://bitbucket.org/key2/qemu | 08:58 |
shenki | as that lets us do the core arch support | 08:58 |
tpb | Title: key2 / qemu Bitbucket (at bitbucket.org) | 08:58 |
mithro | shenki: Yeah, that seems pretty reasonable | 08:58 |
shenki | that said, now that we're up to the delay loop, perhaps i should move to our hardware | 08:58 |
mithro | How does one calibrate a delay loop? | 08:58 |
shenki | it uses a clocksource driver to time how fast things are moving | 08:58 |
shenki | so my time might be better spent getting it working with our timer peripheral, instead of the milkymist one | 08:59 |
mithro | Do we have a timer peripheral? :-P | 08:59 |
shenki | that was my next question :) | 08:59 |
shenki | we need one | 08:59 |
shenki | something that can produce a periodic irq | 09:00 |
mithro | Looks like | 09:00 |
mithro | "timer0": 4, # provided by default (optional) | 09:00 |
mithro | https://github.com/enjoy-digital/litex/blob/master/litex/soc/integration/soc_core.py | 09:01 |
tpb | Title: litex/soc_core.py at master · enjoy-digital/litex · GitHub (at github.com) | 09:01 |
mithro | https://github.com/enjoy-digital/litex/blob/master/litex/soc/cores/timer.py | 09:01 |
tpb | Title: litex/timer.py at master · enjoy-digital/litex · GitHub (at github.com) | 09:01 |
shenki | thanks | 09:03 |
shenki | and key2's qemu implements them? | 09:03 |
mithro | Looking now | 09:04 |
mithro | Looks like that might be the case | 09:04 |
mithro | https://bitbucket.org/key2/qemu/commits/012c29ad596618cfb5f99987a548b64820609376#Lhw/lm32/litex-hw.hT24 | 09:04 |
tpb | Title: key2 / qemu / commit / 012c29ad5966 Bitbucket (at bitbucket.org) | 09:04 |
shenki | his code is one big patch added to the tip of qemu | 09:04 |
shenki | we should find out if he's interested in upstreaming, and if not, do that ourselves | 09:04 |
mithro | Concur | 09:04 |
mithro | shenki: BTW, our lm32 implementation has an experimental MMU | 09:09 |
mithro | https://github.com/m-labs/lm32 | 09:09 |
tpb | Title: GitHub - m-labs/lm32: LatticeMico32 soft processor (at github.com) | 09:09 |
mithro | https://github.com/m-labs/lm32/blob/master/doc/mmu.rst | 09:10 |
tpb | Title: lm32/mmu.rst at master · m-labs/lm32 · GitHub (at github.com) | 09:10 |
shenki | nice | 09:10 |
shenki | mithro: can you remind me why we wanted to have linux running? | 09:11 |
mithro | shenki: Mainly so we have access to DRI, possible network stack and a user space | 09:12 |
shenki | ok | 09:12 |
mithro | shenki: IE just use readline for tab completion | 09:12 |
shenki | :) | 09:12 |
shenki | ok. i will keep hacking at this until it works | 09:12 |
shenki | but in order to upstream it i think i will have to throw most of it out | 09:13 |
shenki | and start over | 09:13 |
shenki | at least we have the current code as a reference | 09:13 |
mithro | I'm not sure if it makes sense to upstream lm32 arch - it does make sense to upstream the drivers if they can be used with or1k/riscv/jcore archs too? | 09:14 |
mithro | shenki: How much "code" is actually an arch? | 09:15 |
shenki | dunno. never done it before | 09:22 |
shenki | 76 files changed, 4968 insertions(+) | 09:22 |
shenki | that's the current tree i have | 09:23 |
shenki | mithro: have we decided out of those three other options what we're going to go with? | 09:23 |
mithro | shenki: If we can choose not to decide for as long as possible, I recommend we do that | 09:24 |
mithro | They said like 90% of Linux is the drivers, right? :-P | 09:28 |
shenki | yeah, it is | 09:31 |
mithro | So we /really/ care about things like the Ethernet and video input/output stuff | 09:32 |
mithro | Which is all driver side, right? | 09:32 |
shenki | yep | 09:33 |
mithro | So, if we can share these drivers between multiple arch, then whichever one actually wins we can end up using | 09:35 |
mithro | shenki: Also, if we are in a situation like now, were we have a known working lm32 arch but unknown others we can work on that first, get the parts working and then have less effort on the other archs? | 09:45 |
shenki | yeah | 09:56 |
shenki | for sure | 09:56 |
shenki | mithro: trying to get it booting on the litex model atm. the address map is quite different | 09:56 |
mithro | Address map? You mean the memory layout? | 09:57 |
shenki | yeah | 10:02 |
shenki | my kernel is trying to execute from 0x00008000 and is crashing qemu | 10:02 |
mithro | shenki: on key2's qemu? | 10:25 |
mithro | https://bitbucket.org/key2/qemu/src/012c29ad596618cfb5f99987a548b64820609376/include/generated/mem.h?fileviewer=file-view-default | 10:26 |
tpb | Title: key2 / qemu / source / include / generated / mem.h Bitbucket (at bitbucket.org) | 10:26 |
mithro | Also https://bitbucket.org/key2/qemu/src/012c29ad596618cfb5f99987a548b64820609376/include/generated/regions.ld?fileviewer=file-view-default | 10:28 |
tpb | Title: key2 / qemu / source / include / generated / regions.ld Bitbucket (at bitbucket.org) | 10:28 |
mithro | shenki: Which branch of linux-lm32 are you using? | 10:30 |
mithro | shenki: Looking at https://github.com/shenki/linux-lm32/blob/ng/arch/lm32/Kconfig.cpu | 10:30 |
tpb | Title: linux-lm32/Kconfig.cpu at ng · shenki/linux-lm32 · GitHub (at github.com) | 10:30 |
*** Bertl_zZ is now known as Bertl | 11:04 | |
*** sb0 has joined #timvideos | 12:55 | |
*** rohitksingh_work has quit IRC | 13:04 | |
*** cr1901_modern has joined #timvideos | 13:08 | |
shenki | mithro: im using the lm32 branch | 13:28 |
mithro | shenki: How does that compare to the ng branch? | 13:28 |
shenki | mithro: ng is the latest that was on m-labs | 13:29 |
mithro | lm32 branch is your rework onto latest? | 13:29 |
shenki | mithro: which is based on 3.15. my tree is based on 4.8 | 13:29 |
shenki | yeah | 13:29 |
mithro | shenki: Have you pushed the latest? | 13:29 |
shenki | mithro: yep | 13:30 |
mithro | shenki: Did you figure out the 0x8000 thing? | 13:30 |
shenki | mithro: nah, i left hackerspace soon after i sent that message | 13:30 |
shenki | the milkymist board maps a flash chip at 0x00000000, whereas the litex one maps a memory region there | 13:31 |
shenki | 0x8000 is the last address after the memory region/flash | 13:31 |
shenki | i'm not sure what opcode 'zero' turns out to be, but the cpu could be fetching from 0 all the way upto 0x8000, when it crashes qemu | 13:32 |
shenki | but if that's the case, i don't know why my kernel works on the milkymist soc | 13:32 |
shenki | will keep investigating tomorrow | 13:32 |
mithro | shenki: Did you see the mem map I linked? | 13:33 |
shenki | yeah | 13:33 |
mithro | I should also go home myself | 13:35 |
shenki | mithro: i wrote some notes: https://github.com/shenki/linux-lm32/wiki | 13:45 |
tpb | Title: Home · shenki/linux-lm32 Wiki · GitHub (at github.com) | 13:45 |
shenki | mostly just in case i lose my bash history :) | 13:45 |
*** rohitksingh has joined #timvideos | 13:59 | |
*** Bertl is now known as Bertl_oO | 14:48 | |
*** aps has quit IRC | 16:32 | |
*** hyadez has quit IRC | 16:32 | |
*** aps has joined #timvideos | 18:07 | |
*** aps is now known as Guest9188 | 18:07 | |
*** hyadez has joined #timvideos | 18:14 | |
*** rohitksingh has quit IRC | 19:29 | |
*** CarlFK has quit IRC | 22:04 |
Generated by irclog2html.py 2.13.1 by Marius Gedminas - find it at mg.pov.lt!