*** tpb has joined #timvideos | 00:00 | |
*** danielki has quit IRC | 00:13 | |
*** danielki has joined #timvideos | 00:27 | |
mithro | futarisIRCcloud: morning | 00:36 |
---|---|---|
futarisIRCcloud | Hi. | 00:37 |
mithro | futarisIRCcloud: I'm using the toolchain from conda | 00:40 |
futarisIRCcloud | Ok. | 00:44 |
futarisIRCcloud | Just booted Linux 4.11.0-rc5 in qemu openrisc_sim ... Works fine with binutils 2.17 or 2.18, I think. | 00:45 |
futarisIRCcloud | Must just be my qemu command lines for qemu_system_or32 -M litex. | 00:46 |
mithro | futarisIRCcloud: or1k is in binutil upstream | 00:46 |
*** danielki has quit IRC | 00:47 | |
mithro | futarisIRCcloud: Sadly no upstream gcc | 00:47 |
mithro | futarisIRCcloud: https://github.com/timvideos/conda-hdmi2usb-packages/blob/master/or1k/gcc-newlib/meta.yaml | 00:48 |
tpb | Title: conda-hdmi2usb-packages/meta.yaml at master · timvideos/conda-hdmi2usb-packages · GitHub (at github.com) | 00:48 |
mithro | futarisIRCcloud: That is where I'm getting the gcc I'm using from | 00:50 |
mithro | futarisIRCcloud: FYI I've replied to your email | 02:07 |
*** futarisIRCcloud has quit IRC | 04:29 | |
*** futarisIRCcloud has joined #timvideos | 04:35 | |
mithro | futarisIRCcloud: Having much luck? | 07:39 |
futarisIRCcloud | Not yet. I'm trying with CONFIG_CONSOLE_POLL now. IRQ 0 might also be another issue. | 07:40 |
mithro | futarisIRCcloud: I have NFI if the IRQs are working at all | 07:40 |
futarisIRCcloud | Couldn't figure out how to compile or1k-elf-gdb 7.12.1, so just commented out the source line in your script. | 07:41 |
mithro | futarisIRCcloud: source line? | 07:41 |
futarisIRCcloud | buildroot will compile or1k-linux-gdb though. | 07:42 |
mithro | futarisIRCcloud: There are precompiled binaries in our conda | 07:42 |
futarisIRCcloud | Only 7.11 I think in conda. | 07:42 |
futarisIRCcloud | uart-litex.c line 770. <= 0, rather than < 0. | 07:44 |
mithro | Ahh | 07:45 |
mithro | Actually shorne has a gdb with a couple of fixes | 07:45 |
mithro | https://github.com/stffrdhrn/binutils-gdb | 07:46 |
tpb | Title: GitHub - stffrdhrn/binutils-gdb: Binutils and gdb fork for OpenRISC (at github.com) | 07:46 |
mithro | futarisIRCcloud: I would definitely recommend hacking up QEMU with extra prints in the peripheral code to see when it tried to raise an interrupt... | 07:55 |
futarisIRCcloud | Yep. | 07:55 |
mithro | But I guess polling mode should work as earlycon does? | 07:55 |
futarisIRCcloud | Haven't tried putting CONFIG_CONSOLE_POLL=y in the .config yet. | 07:57 |
futarisIRCcloud | It compiles, but the same issue. Something else missing in the uart-litex code. I think we aren't enabling the interrupt line. maybe. | 08:03 |
mithro | futarisIRCcloud: Hrm? The polling code doesn't use interrupts? | 08:13 |
futarisIRCcloud | I think the problem is in litex_uart_start_tx(). It doesn't call anything at the moment, so no chars are printed. | 08:56 |
mithro | futarisIRCcloud: BTW Do you know how to use gdb to get the dmesg output? | 08:56 |
futarisIRCcloud | I think you just follow that elinux link that I sent. Of course, if the code is "emptying" the printk buffer (to nowhere), then it doesn't help. | 08:58 |
mithro | futarisIRCcloud: Sure it does, the printk buffer is a ring buffer so you can still see the contents | 08:59 |
futarisIRCcloud | Yep. litex_uart_transmit(port, 0) will let some more console output through... Let's just fix it up to use the proper TXFULL... | 09:01 |
futarisIRCcloud | "Welcom" | 09:14 |
*** hobbes- has quit IRC | 09:21 | |
futarisIRCcloud | I'm not sure we are emulating TXFULL correctly in qemu. | 09:37 |
mithro | futarisIRCcloud: That is possible | 09:37 |
futarisIRCcloud | qemu_chr_fe_write_all() in uart_write | 09:42 |
futarisIRCcloud | Easiest way is to hack a sleep after every character or so, to artificially slow down the TX (in the kernel driver). | 09:44 |
mithro | futarisIRCcloud: We can fix qemu :-P | 09:45 |
futarisIRCcloud | Yeah, that's what we should do. | 09:51 |
mithro | futarisIRCcloud: If you haven't fixed it by the time I finish this spreadsheet I'll take a look at it | 10:03 |
futarisIRCcloud | Ok. | 10:04 |
futarisIRCcloud | XXX this blocks entire thread. Rewrite to use qemu_chr_fe_write and background I/O callbacks | 10:08 |
futarisIRCcloud | https://lists.gnu.org/archive/html/qemu-devel/2016-08/msg00684.html | 10:09 |
tpb | Title: [Qemu-devel] [PATCH 0/5] Global fix / workaround usage of qemu_chr_fe_wr (at lists.gnu.org) | 10:09 |
futarisIRCcloud | Only ever getting output from litex_uart_start_tx() ... | 10:34 |
mithro | Hrm? | 10:35 |
mithro | I will probably be back a later tonight (maybe 2 hours?), have to run away for a couple of hours. | 10:36 |
futarisIRCcloud | I can't really enable IRQs in the linux driver if the TX and RX IRQs aren't both happening in the QEMU driver. From looking through the QEMU driver, TXFULL etc don't happen. | 10:42 |
futarisIRCcloud | So CONFIG_CONSOLE_POLL gives the polling routines for writing and reading from the uart while in an interrupt or debug context ... | 10:47 |
futarisIRCcloud | http://www.spinics.net/lists/linux-serial/msg22724.html | 11:00 |
tpb | Title: polling a UART vs. interrupt Linux Serial (at www.spinics.net) | 11:00 |
futarisIRCcloud | I'm guessing that you're going to need to have a uart_update_irq() function like serial.c or lm32_uart.c etc... | 11:07 |
*** hobbes- has joined #timvideos | 11:15 | |
*** tvCommitBot has joined #timvideos | 13:00 | |
-tvCommitBot- [av-foss-stack] CarlFK pushed 1 new commit to master: https://git.io/vSQIw | 13:00 | |
-tvCommitBot- av-foss-stack/master 1900179 Carl Karsten: test minicom install | 13:00 | |
*** tvCommitBot has left #timvideos | 13:00 | |
*** futarisIRCcloud has quit IRC | 14:39 | |
*** f15h has joined #timvideos | 19:51 | |
*** f15h has quit IRC | 20:30 | |
*** olasd has quit IRC | 21:02 | |
*** olasd has joined #timvideos | 21:04 | |
*** danielki has joined #timvideos | 21:24 | |
*** futarisIRCcloud has joined #timvideos | 22:27 | |
*** danielki has quit IRC | 22:43 | |
*** danielki has joined #timvideos | 22:56 |
Generated by irclog2html.py 2.13.1 by Marius Gedminas - find it at mg.pov.lt!