[SLOF] Loading file from disk image
Nikunj A Dadhania
nikunj at linux.vnet.ibm.com
Wed Jan 3 03:41:44 AEDT 2018
Thomas Huth <thuth at redhat.com> writes:
> On 02.01.2018 16:38, Jd Lyons wrote:
>>
>>
>>> On Jan 2, 2018, at 10:10 AM, Thomas Huth <thuth at redhat.com
>>> <mailto:thuth at redhat.com>> wrote:
>>>
>>> On 02.01.2018 16:02, Jd Lyons wrote:
>>>>
>>>>
>>>>> On Jan 2, 2018, at 9:25 AM, Thomas Huth <thuth at redhat.com
>>>>> <mailto:thuth at redhat.com>> wrote:
>>>>>
>>>>> On 02.01.2018 15:17, Jd Lyons wrote:
>>>>>>
>>>>>>
>>>>>>> On Jan 2, 2018, at 8:43 AM, Jd Lyons <lyons_dj at yahoo.com
>>>>>>> <mailto:lyons_dj at yahoo.com>> wrote:
>>>>>>>
>>>>>>> Joy!peffpwpc……
>>>>>>>
>>>>>>> 14677: [ a5] 0 0 0 2 1 5e77ef40 5e7d1078 4 0
>>>>>>> 14679: [111] encode-int 0 0 2 1 5e77ef40 5e7d1078 4 5e7d107c 4
>>>>>>> 1467b: [112] encode+ 0 0 2 1 5e77ef40 5e7d1078 8
>>>>>>> 1467c: [ 12] b(") 0 0 2 1 5e77ef40 5e7d1078 8 1467e e
>>>>>>> 1468d: [110] property 0 0 2 1 5e77ef40
>>>>>>> 1468f: [127] finish-device 0 0 2 1 5e77ef40
>>>>>>> 14691: [127] finish-device 0 0 2 1 5e77ef40
>>>>>>> 14693: [de0] xde0 0 0 2 1 5e77ef40
>>>>>>> 14694: [ 0] end0 0 0 2 1 5e77ef40
>>>>>>> restored fcode@ 5e77ef40
>>>>>>> restored fcode-spread 1
>>>>>>> restored fcode-offset 2
>>>>>>> restored fcode-end 0
>>>>>>> restored ip 0
>>>>>>> ok
>>>>>>> 0 > dev /pci ls
>>>>>>> 5e72ad60 : /pci at 800000020000000
>>>>>>> 5e72d2e8 : |-- ethernet at 0
>>>>>>> 5e72d9d8 : +-- NVDA,Parent at 1
>>>>>>> 5e7cfab0 : |--
>>>>>>>
>>>>>>
>>>>>> Seems to be having trouble populating the children,
>>>>>>
>>>>>> I should see:
>>>>>>
>>>>>>> 5e72d9d8 : +-- NVDA,Parent at 1
>>>>>>> 5e7cfab0 : |-- NVDA,Display-A
>>>>>
>>>>> Indeed, sounds like there is something wrong here. Does SLOF hang during
>>>>> the "ls" or do you get back to the firmware prompt? Could you please
>>>>> paste the whole log, right from the start of booting the VM?
>>>>>
>>>>
>>>> Seems to scroll on forever after the ls command, so there is some
>>>> data in the child, not sure what it is. I may try and let it run to
>>>> it’s end, I only gave it about 10 min.
>>>>
>>>>
>>>>
>>>>> Not sure, but in case you've manually started the FCODE from the
>>>>> firmware prompt, maybe you've also got to open the node for "extension"
>>>>> instead. So instead of doing select-dev or open-dev, could you please
>>>>> try this instead:
>>>>>
>>>>> dev /pci/vga
>>>>> get-node extend-device
>>>>>
>>>>
>>>> Seems to matter the oder I do things, I haven’t figured the correct
>>>> oder of commands:
>>> [...]
>>>> 0 > dev /pci/vga ok
>>>> 0 > get-node extend-device ok
>>>> 0 > include evaluator.fs ok
>>>> 0 > load disk1:,\666
>>>> Trying to load: from:
>>>> /vdevice/v-scsi at 71000002/disk at 8100000000000000:,\666 ... ok
>>>> 0 > 4040 1 byte-load no current instance
>>>> 0 > s" /pci/vga" select-dev ok
>>>> 0 > load disk1:,\666
>>>> Trying to load: from:
>>>> /vdevice/v-scsi at 71000002/disk at 8100000000000000:,\666 ... ok
>>>> 0 > 4040 1 byte-load byte-load Undefined word
>>>>
>>>> 0 > 4040 1 byte-load byte-load Undefined word
>>>>
>>>> 0 > include evaluator.fs ok
>>>> 0 > 4040 1 byte-load FCode called abort: IP 1405f 6 b
>>>> Aborted
>>>> 0 > true to eva-debug? ok
>>>> 0 > 4040 1 byte-load
>>>
>>> Please always do the "include evaluator.fs" and "true to eva-debug?"
>>> commands first - otherwise the FCODE evaluator Forth words might get
>>> installed as words of /pci/vga only instead, and not of the global Forth
>>> dictionary.
>>>
>>> I think you should also do the "load disk1..." before changing to the
>>> /dev/vga node, since "load" might also tinker with the current device
>>> tree node. So please try this order:
>>>
>>> include evaluator.fs
>>> true to eva-debug?
>>> load disk1:,\666
>>> dev /pci/vga
>>> get-node extend-device
>>> 4040 1 byte-load
>>>
>>
>> Doing this seems to result in not getting the correct instance.
>
> Hmm, you could also try:
>
> include evaluator.fs
> true to eva-debug?
> load disk1:,\666
> s" /pci/vga" select-dev
> get-node extend-device
> 4040 1 byte-load
>
> ... if that does not help, then I'm also running out of ideas, sorry...
As Thomas suggested, this is what i had to use when i was playing around with FCODE;
diff --git a/board-qemu/slof/pci-phb.fs b/board-qemu/slof/pci-phb.fs
index 4f8e702..053c4db 100644
--- a/board-qemu/slof/pci-phb.fs
+++ b/board-qemu/slof/pci-phb.fs
@@ -16,6 +16,7 @@
." Populating " pwd cr
+get-node extend-device
Nikunj
More information about the SLOF
mailing list