--- Log opened Tue Apr 04 00:00:14 2017 | ||
--- Log closed Tue Apr 04 01:09:44 2017 | ||
--- Log opened Tue Apr 04 01:09:52 2017 | ||
-!- Irssi: #openrisc: Total of 45 nicks [0 ops, 0 halfops, 0 voices, 45 normal] | 01:09 | |
-!- Irssi: Join to #openrisc was synced in 29 secs | 01:10 | |
-!- Netsplit *.net <-> *.split quits: juliusb, shorne, X-Scale, fotis, promach, O01eg | 01:14 | |
-!- [X-Scale] is now known as X-Scale | 01:14 | |
-!- Netsplit over, joins: promach | 01:21 | |
wbx | shorne_: hi. qemu-system-or32 does not exit when powering off : Requesting system poweroff -> hangs | 02:34 |
---|---|---|
wbx | shorne_: 2.9.1rc, any idea? this is needed for automatic testing... | 02:35 |
wbx | shorne_: or is network emulation working? then I can try qmp. to inform qemu via qmp to shutdown the machine. | 02:36 |
mithro | anyone here understand the start up sequence for Linux on or1k? I'm trying to understand how the MMU gets initialised with the initial page mapping? | 06:18 |
mithro | Looks like I want the setup_memory function | 07:47 |
shorne_ | wbx: I would have to check what does your software do to halt? it linux? | 10:16 |
shorne_ | mithro: there are a few steps, very initial is here... | 10:17 |
shorne_ | https://github.com/stffrdhrn/linux/blob/openrisc-4.12-smp-qspinlock/arch/openrisc/kernel/head.S#L614 | 10:20 |
shorne_ | as soon as l.mtsprr0,r30,SPR_SR is run, it enables mmu, next instruction fetch causes a page fault | 10:22 |
shorne_ | it then sets up that page | 10:22 |
shorne_ | in boot_itlb_miss_handler | 10:22 |
shorne_ | after mmu is setup more there is switch from boot_itlb_miss_handler to itlb_miss_handler | 10:23 |
shorne_ | (thats done with some self writing code updating the jump inscrution at 0x300 Data & 0x400: Insn Page Fault exception | 10:24 |
-!- shorne_ is now known as shorne | 10:25 | |
wbx | shorne: yes, linux busybox poweroff | 13:19 |
wbx | shorne: seems to work with most other qemu system emulation. may be something special in or1k? | 13:20 |
shorne | wbx: if you look at 'arch/openrisc/kernel/process.c' there are some functions like machine_power_off() etc. | 17:17 |
shorne | thats what is called when the power goes down, for openrisc it just does | 17:18 |
shorne | l.nop 1 | 17:18 |
shorne | other archs probably do something different, like call some halt instruction, or talk to power hardware | 17:20 |
shorne | then qemu can emulate that and exit the system | 17:21 |
wbx | so you think getting network emulation running and qmp will be simpler? | 17:24 |
shorne | I think getting halt working will be easier | 17:56 |
wbx | can you assist me or do you have a concrete idea? i can test patches :) | 17:58 |
shorne | I am not sure if its the right thing, but there is a power management register | 17:59 |
shorne | maybe we can set the suspend flag there on powerdown | 17:59 |
wbx | shorne: could you already see the issue with qemu and linux trying to poweroff? | 18:00 |
shorne | wbx: well, I noticed it didnt actually exit qemu | 18:01 |
shorne | but I just pretty ctrl+c to exit | 18:01 |
wbx | yeah, but that is hard to do in non-interactive shell scripts :) | 18:02 |
shorne | you can do with an 'expect' script? | 18:02 |
wbx | urgs. all other systems can either use qmp or poweroff. implementing such a hack for just one test case... hmm | 18:03 |
shorne | right, it will require patches to qemu and kernel I think | 18:03 |
wbx | https://tests.embedded-test.org/uClibc-ng/1.0.22/ | 18:04 |
wbx | i used or1ksim, but it now fails to start, so i tested qemu again. | 18:04 |
shorne | it fails to start? oh.. and this works in or1ksim? | 18:05 |
shorne | did my kernel changes break or1ksim? | 18:05 |
wbx | hmm. not sure which change breaking it. | 18:06 |
shorne | does halt work in or1ksim? | 18:07 |
wbx | any changes in upstream between 4.9.6 and 4.9.20? | 18:07 |
wbx | https://tests.embedded-test.org/uClibc-ng/1.0.22/REPORT.or1k.libc.uClibc-ng-1.0.22 | 18:07 |
wbx | yes poweroff in or1ksim worked. | 18:07 |
wbx | after that console is back. | 18:07 |
shorne | ok, then I can upate qemu to do like or1ksim I guess | 18:08 |
shorne | sorry got to go | 18:08 |
wbx | no prob | 18:08 |
mithro | shorne: I'm working on getting Linux booting on our SoC which uses the mor1k but none of your peripherals | 18:20 |
--- Log closed Wed Apr 05 00:00:15 2017 |
Generated by irclog2html.py 2.15.2 by Marius Gedminas - find it at mg.pov.lt!