[OpenBIOS] PIC Passthough( VGA )

Segher Boessenkool segher at kernel.crashing.org
Mon Dec 18 21:10:48 CET 2017


On Mon, Dec 18, 2017 at 11:56:09AM -0500, Jd Lyons wrote:
> > On Dec 18, 2017, at 11:42 AM, Segher Boessenkool <segher at kernel.crashing.org> wrote:
> >>> : xdff
> >>>   " vendor-id" get-my-property IF ABORT THEN
> >>>   decode-int -rot 2drop   dup TO x93b   10de <> IF ABORT THEN
> >>>   " device-id" get-my-property IF ABORT THEN
> >>> ...
> >>> 
> >>> so it seems the device-id or vendor-id propertie don't exist, or don't
> >>> have the right value?  Or you don't have a current instance, perhaps.
> >> 
> >> I don’t know, maybe because we’re only executing the FCode from 4000040, past the part in the Rom where the Device ID is in the PCI Header?
> >> 
> >> It looks like it just sets the Vendor ID to 10de, but I’m un sure what it does for the Device ID, that seem to be the point where it’s breaking.
> >> 
> >>      (offset) 5 
> >> 401000d : (compile)  [ 0xe05 ]
> >> 401000e : (compile) b(endcase) [ 0xc5 ]
> >> 401000f : (compile) over [ 0x48 ]
> >> 4010010 : (compile) b(to) [ 0xc3 ]
> >> 4010014 : (compile)  [ 0xe36 ]
> >> 4010016 : (compile) encode+ [ 0x112 ]
> >> 4010017 : (compile) 2dup [ 0x53 ]
> >> 4010018 : (compile) b(to) [ 0xc3 ]
> >> 401001b : (compile) b(to) [ 0xc3 ]
> >> 401001f : (compile)  [ 0xc7b ]
> >> 4010021 : (compile) property [ 0x110 ]
> >> 4010022 : (compile) b(;) [ 0xc2 ]
> >> 4010023 : b(') [ 0x11 ]
> >> 4010026 : b(to) [ 0xc3 ]
> >> 401002a :  [ 0xe34 ]
> >> 401002c :  [ 0xdff ]
> >> 
> >> byte-load: exception caught!
> >> ok
> >> 1 > .properties 
> >> name                      "pci10de,141"
> >> vendor-id                 10de 
> >> device-id                 141 
> > 
> > So device-id is set, too.
> > 
> > Is there a current instance?   my-self .   will show you.
> > 
> > If you have trouble tracking down where the abort / exception is coming
> > from, it often helps to look at memory:
> > 
> > here 200 - 400 dump
> > 
> > 
> 
> Hmmm…..
> 
> my-self . 0  ok    

So you didn't have a current instance when you began...  Use open-dev ?
Or immediately make thing work the way they should.

> 1 > here 200 - 400 dump 
> fffa8f44  74 80 3e 71 50 80 08 00  93 01 6c 02 12 05 6e 29    t�>qP�..�.l...n)
> fffa8f54  60 2a 00 2e 00 2f 20 74  80 3e 71 50 80 08 00 93    `*.../ t�>qP�..�
> fffa8f64  ff f6 e2 b0 ff f6 e2 e4  ff f6 6c 78 00 00 00 fc    ����������lx...�
> fffa8f74  01 6c 02 12 05 6e 29 60  2a 00 2e 00 2f 20 74 80    .l...n)`*.../ t�
> fffa8f84  3e 71 50 80 08 00 93 01  6b 02 12 05 6e 29 60 2a    >qP�..�.k...n)`*
> fffa8f94  00 2e 00 2f 20 50 81 08  00 93 01 6b 02 12 05 6e    .../ P�..�.k...n
> fffa8fa4  29 60 2a 00 2e 00 2f 20  74 80 3e 71 50 80 08 00    )`*.../ t�>qP�..
> fffa8fb4  93 01 6c 02 12 05 6e 29  60 2a 00 2e 00 2f 20 50    �.l...n)`*.../ P
> fffa8fc4  81 08 00 93 01 6c 02 12  05 6e 29 60 2a 00 2e 00    �..�.l...n)`*...
> fffa8fd4  2f 20 74 80 3e 71 50 80  08 00 93 01 6c 02 12 05    / t�>qP�..�.l...
> fffa8fe4  6e 29 60 2a 00 2e 00 2f  20 50 81 08 00 93 01 6c    n)`*.../ P�..�.l
> fffa8ff4  02 12 05 6e 29 60 2a 00  2e 00 2f 20 74 80 3e 71    ...n)`*.../ t�>q
> fffa9004  50 80 09 00 93 01 6c 02  12 04 89 05 6e 31 00 32    P�..�.l...�.n1.2
> fffa9014  00 33 00 2e 15 74 50 c3  74 50 c3 50 80 01 01 62    .3...tP�tP�P�..b
> fffa9024  50 81 06 3b 00 3c 00 3d  00 3e 00 3f 00 3a 81 71    P�.;.<.=.>.?.:�q
> fffa9034  50 80 09 00 13 01 71 02  32 04 89 05 6e 30 00 31    P�....q.2.�.n0.1
> fffa9044  00 32 00 33 00 50 81 0a  00 13 01 71 02 32 04 81    .2.3.P�....q.2.�
> fffa9054  05 2e 30 00 31 00 32 00  33 00 3a 80 74 50 c3 74    ..0.1.2.3.:�tP�t
> fffa9064  50 c3 71 50 80 06 00 93  01 6b 02 52 ff f6 e2 b0    P�qP�..�.k.R����
> fffa9074  ff f6 e2 e4 ff f6 6c 78  00 00 00 6b 04 81 05 6e    ������lx...k.�.n
> fffa9084  3a 80 6e 88 15 00 00 00  00 00 00 25 20 00 00 71    :�n�.......% ..q
> fffa9094  71 6e 80 08 68 00 ff ff  ff df 00 00 00 00 71 6e    qn�.h.����....qn
> fffa90a4  80 28 68 00 ff ff ff cf  00 00 00 00 71 7a 04 13    �(h.����....qz..
> fffa90b4  00 00 00 08 00 00 58 00  14 00 00 04 a2 1d a8 a9    ......X.....�.��
> fffa90c4  23 1e b7 7f d7 25 c8 c9  16 c2 27 7f 6e 98 10 00    #.��%��.�'n�..
> fffa90d4  00 f7 ff ff ff 00 00 00  00 6e 10 13 00 00 ff ff    .����....n....��
> fffa90e4  ff ff 00 00 00 00 71 00  ff f6 e2 b0 ff f6 e2 e4    ��....q.��������
> fffa90f4  ff f6 44 d0 00 00 00 08  ff fa 47 38 ff f6 41 88    ��D�....��G8��A�
> fffa9104  ff f6 41 58 ff f6 40 d4  ff f8 80 d0 ff f6 4b c0    ��AX��@�������K�
> fffa9114  ff fa 6d f4 ff f6 e2 e4  ff f6 41 38 ff f6 40 d4    ��m�������A8��@�
> fffa9124  ff f8 80 e0 ff f6 4b c0  ff f6 40 d4 ff f8 80 d0    ������K���@�����
> fffa9134  ff f6 4b c0 ff f9 1c 9c  ff f6 e4 bc ff f6 40 c4    ��K���.�������@�

(Here is the current "here"; nothing interesting after this).

> Not sure, doesn’t look like I dumped the right address range.

You did, it's just not very interesting ;-)


Segher



More information about the OpenBIOS mailing list