Re: [coreboot] x230 - vgabios
Hey Paul! This is actually what i have and as i already wrote in another mail i got the image via: echo 1 /sys/devices/pci\:00/\:00\:02.0/rom cp /sys/devices/pci\:00/\:00\:02.0/rom vgabios.bin On 05/23/15 11:36, Vladimir 'phcoder' Serbinenko wrote: That's your problem. ROM needs to be extracted, not dumped. You can workaround immediate problem by disabling checksum in SeaBIOS but dumped oprom for intel is not fully functional, i.a. LCD stays black with windows. I guess the rom dumped from linux is broken... I still had no time to try UEFITool - quite busy atm... Attached .config and bootlog and some cmdline-shizzle... [21:00:24][n3ph@c3po:~/Stuff/coreboot/x230/coreboot]$ ./build/cbfstool build/coreboot.rom print coreboot.rom: 12288 kB, bootblocksize 1936, romsize 12582912, offset 0xb0 alignment: 64 bytes, architecture: x86 Name Offset Type Size cmos.default 0xb0 cmos_default 256 cmos_layout.bin0xb00140 cmos_layout 1984 pci8086,0166.rom 0xb00940 optionrom65536 cpu_microcode_blob.bin 0xb10980 microcode22528 config 0xb16200 raw 5457 revision 0xb17780 raw 570 (empty)0xb17a00 null 34136 fallback/romstage 0xb1ff80 stage73116 fallback/ramstage 0xb31d80 stage74814 fallback/payload 0xb44200 payload 55082 pci8086,1502.rom 0xb51980 raw 61952 (empty)0xb60bc0 null 521176 mrc.cache 0xbdffc0 mrc_cache65536 (empty)0xbf null 63512 [21:00:53][n3ph@c3po:~/Stuff/coreboot/x230/coreboot]$ ./build/cbfstool build/coreboot.rom extract -n pci8086,0166.rom -f /tmp/vgabios.bin Found file pci8086,0166.rom at 0xb00940, type optionrom, size 65536 W: Only 'raw' files are safe to extract. [21:01:17][n3ph@c3po:~/Stuff/coreboot/x230/coreboot]$ file /tmp/vgabios.bin /tmp/vgabios.bin: BIOS (ia32) ROM Ext. IBM comp. Video (128*512) [21:01:26][n3ph@c3po:~/Stuff/coreboot/x230/coreboot]$ hexdump /tmp/vgabios.bin | head 000 aa55 e980 ea78 3030 3030 3030 3030 3030 010 3030 2540 59e9 9724 0040 0ab0 3030 4249 020 204d 4756 2041 6f43 706d 7461 6269 656c 030 4220 4f49 2e53 0320 006e 007e 008c c08b 040 4350 5249 8086 0106 001c 001c 0003 0300 050 0080 8000 0080 0106 0116 060 0126 0156 0166 0176 0186 036e c000 070 0088 c000 080 001a 0337 c000 090 [21:01:31][n3ph@c3po:~/Stuff/coreboot/x230/coreboot]$ md5sum /tmp/vgabios.bin bd4c14c5c2c6cd5fd1bee9428e31b320 /tmp/vgabios.bin [21:09:05][n3ph@c3po:~/Stuff/coreboot/x230/coreboot]$ md5sum 3rdparty/mainboard/lenovo/x230/vgabios.bin bd4c14c5c2c6cd5fd1bee9428e31b320 3rdparty/mainboard/lenovo/x230/vgabios.bin [21:09:17][n3ph@c3po:~/Stuff/coreboot/x230/coreboot]$ best regards, n3ph On 05/23/15 16:22, Paul Menzel wrote: Dear Michael, Am Samstag, den 23.05.2015, 04:28 +0200 schrieb Michael Gerlach: Uhm - I do not explicitly compressed it. I just added it to config.. Extracted it via echo 1 /sys/devices/pci\:00/\:00\:02.0/rom cp /sys/devices/pci\:00/\:00\:02.0/rom vgabios.bin How to check if it's compressed? The *file` command should help you. For my AMD Video BIOS from the ASRock E350M1 I get the following. $ file vgabios.bin vgabios.rom: BIOS (ia32) ROM Ext. IBM comp. Video (113*512) If the method you used, did not work, please report a bug to the Intel graphics folks [1]. Thanks, Paul [1] https://01.org/linuxgraphics/documentation/how-report-bugs -- Bitte benutzt GPG: http://de.wikipedia.org/wiki/GNU_Privacy_Guard USB coreboot-4.0-9736-g537283d Do 21. Mai 08:34:38 UTC 2015 romstage starting... Setting up static southbridge registers... done. Disabling Watchdog reboot... done. Setting up static northbridge registers... done. Initializing Graphics... Back from sandybridge_early_initialization() SMBus controller enabled. CPU id(306a9): Intel(R) Core(TM) i5-3320M CPU @ 2.60GHz AES supported, TXT supported, VT supported PCH type: QM77, device id: 1e55, rev id 4 Intel ME early init Intel ME firmware is ready ME: Requested 32MB UMA Starting native Platform init Rowaddr bits : 16 Column addr bits : 10 Number of ranks : 2 DIMM Capacity : 8192 MB CAS latencies : 6 7 8 9 10 11 tCKmin: 1.250 ns tAAmin: 13.125 ns tWRmin: 15.000 ns tRCDmin : 13.125 ns tRRDmin : 6.000 ns tRPmin: 13.125 ns tRASmin : 35.000 ns tRCmin: 48.125 ns tRFCmin : 260.000 ns tWTRmin : 7.500 ns tRTPmin
Re: [coreboot] x230 - vgabios
Hi, do the following: 0) Get the PCI ID via lspci -vnn of the Intel Graphics Device. 1) Get the UEFITool https://github.com/LongSoft/UEFITool 2) Extract with the flashrom ich_descriptor_tool your UEFI Firmware (BIOS). - ich_descriptor_tool -f bios.bin -d 3) Open the UEFI Image with the UEFITool go under search - text and disable UTF-8 support. 4) Enter for intel graphic devices VGA Compatible BIOS and you will find one more matching entries by scrolling down the log. For Nvidia use VGA Compatible. 5) Extract all entries with Extract body. Correct Oproms should have for Intel around 65k size. If it's only one entry then you can stop here and use it as vgabios. 6) Get rom-parser https://github.com/awilliam/rom-parser and run it on the files. You will get printed some infos including the pci id. If the id matches with your graphics device use the it as vgabios. Regards Zaolin Dear Michael, Am Samstag, den 23.05.2015, 04:28 +0200 schrieb Michael Gerlach: Uhm - I do not explicitly compressed it. I just added it to config.. Extracted it via echo 1 /sys/devices/pci\:00/\:00\:02.0/rom cp /sys/devices/pci\:00/\:00\:02.0/rom vgabios.bin How to check if it's compressed? The *file` command should help you. For my AMD Video BIOS from the ASRock E350M1 I get the following. $ file vgabios.bin vgabios.rom: BIOS (ia32) ROM Ext. IBM comp. Video (113*512) If the method you used, did not work, please report a bug to the Intel graphics folks [1]. Thanks, Paul [1] https://01.org/linuxgraphics/documentation/how-report-bugs -- coreboot mailing list: coreboot@coreboot.org http://www.coreboot.org/mailman/listinfo/coreboot signature.asc Description: This is a digitally signed message part -- coreboot mailing list: coreboot@coreboot.org http://www.coreboot.org/mailman/listinfo/coreboot
Re: [coreboot] x230 - vgabios
Le Sat, May 23, 2015 à 4:46 AM, Michael Gerlach n...@terminal21.de a écrit : -BEGIN PGP SIGNED MESSAGE- Hash: SHA1 Hi Patrick! Uhm - I do not explicitly compressed it. I just added it to config.. Extracted it via echo 1 /sys/devices/pci\:00/\:00\:02.0/rom cp /sys/devices/pci\:00/\:00\:02.0/rom vgabios.bin That's your problem. ROM needs to be extracted, not dumped. You can workaround immediate problem by disabling checksum in SeaBIOS but dumped oprom for intel is not fully functional, i.a. LCD stays black with windows. How to check if it's compressed? Best regards, n3ph On 05/23/15 03:22, Patrick Georgi wrote: 2015-05-23 1:06 GMT+02:00 Michael Gerlach n...@terminal21.de: GET_VBIOS: 7b46 3714 8b a2 e9 printk(BIOS_DEBUG, GET_VBIOS: %x %x %x %x %x\n, oprom-signature, pcir-vendor, pcir-classcode[0], pcir-classcode[1], pcir-classcode[2]); But Signature should be 0x55aa: Just to double check: did you add the vgabios with or without compression? coreboot only supports uncompressed vgabios images (while seabios allows them compressed as well, if the name matches) Patrick - -- Bitte benutzt GPG: http://de.wikipedia.org/wiki/GNU_Privacy_Guard -BEGIN PGP SIGNATURE- Version: GnuPG v2 iQEcBAEBAgAGBQJVX+XmAAoJEE1l5S41evqaQRcH/2fBtgPODZzmDNHX03Vi8UJY bRXIg4RwGo2lbfaepxfJuyi0EH5Rv5QAOCMBB6Eh7c6Tovf+wa4kbZivc+4Qn/k2 zBb/qvURAmthHQzqVuRUBL5zI5SRL/KbcGX5l7jkjx+d1KVLlfZR+rT4KHHOVJLF FccnwT0P2OrSeyLMV31pCqkbK5Nf9lVsIRAJoQtcWwlaClTiaIUiji0TzJwjoJ5C JibGCNCRJ4yjgCTty4EwmRxrUYvBEjFg87g33HhE61Ya73Dh4xcetEC2y/stdnMs U4LV/Kzb/oDfOdmy6Em0+XnDAFTaSxkqTqU2V/zBGsZACNwj4fce4QrNi35DJpE= =DNks -END PGP SIGNATURE- -- coreboot mailing list: coreboot@coreboot.org http://www.coreboot.org/mailman/listinfo/coreboot -- coreboot mailing list: coreboot@coreboot.org http://www.coreboot.org/mailman/listinfo/coreboot
Re: [coreboot] x230 - vgabios
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 Extracted it via echo 1 /sys/devices/pci\:00/\:00\:02.0/rom cp /sys/devices/pci\:00/\:00\:02.0/rom vgabios.bin That's your problem. ROM needs to be extracted, not dumped. You can workaround immediate problem by disabling checksum in SeaBIOS but dumped oprom for intel is not fully functional, i.a. LCD stays black with windows. I already experienced buffer artifacts and wrong colors - quite unusable .. As written in docs[1] i assumed this should work this way.. :-/ What is the difference between dumped and extracted vbios? What is the correct way to extract a fully working oprom? Via bios-extract i just get: Using file bios-dump.rom (4096kB) Error: Unable to detect BIOS Image type. [1] http://www.coreboot.org/VGA_support#Retrieval_via_Linux_kernel Best regards, n3ph - -- Bitte benutzt GPG: http://de.wikipedia.org/wiki/GNU_Privacy_Guard -BEGIN PGP SIGNATURE- Version: GnuPG v2 iQEcBAEBAgAGBQJVYHclAAoJEE1l5S41evqaamAH/RcxHLhsQOhcKNjp8Yn6vWoJ 2dVXbVk8PPF3LdtjGjkVgXEuslB2wH984BQ09/Lm5FUhHN4k1jfJQlDauQxAVWWr AbEK08tBy+60UiKYFfQzkF6CuqSqhjF+gw0MfTqCZLLAscKGq7R+FoO/HIeRJRZI S1QBSlQPvrJDJRTI58mmgah6ggYDFlxyGDz6ww7DgjWXxL56fjyNSzpyygPcKUNr hYgpaeVSAGZAX4mJKd3n/HlYLKq0e5V8pt22xpUeEuwM07SCqGvbX0yxYi0tgTmW NJ1k1o2mWf/z8MBHJo1ltORh5lLFn9ZFJDeCJ1iK+68lTD6SiYiG20Mi+ib4PbQ= =BK2J -END PGP SIGNATURE- -- coreboot mailing list: coreboot@coreboot.org http://www.coreboot.org/mailman/listinfo/coreboot
Re: [coreboot] x230 - vgabios
Dear Michael, Am Samstag, den 23.05.2015, 04:28 +0200 schrieb Michael Gerlach: Uhm - I do not explicitly compressed it. I just added it to config.. Extracted it via echo 1 /sys/devices/pci\:00/\:00\:02.0/rom cp /sys/devices/pci\:00/\:00\:02.0/rom vgabios.bin How to check if it's compressed? The *file` command should help you. For my AMD Video BIOS from the ASRock E350M1 I get the following. $ file vgabios.bin vgabios.rom: BIOS (ia32) ROM Ext. IBM comp. Video (113*512) If the method you used, did not work, please report a bug to the Intel graphics folks [1]. Thanks, Paul [1] https://01.org/linuxgraphics/documentation/how-report-bugs signature.asc Description: This is a digitally signed message part -- coreboot mailing list: coreboot@coreboot.org http://www.coreboot.org/mailman/listinfo/coreboot
[coreboot] x230 - vgabios
Greetings, i am trying to get coreboot running on x230 and have some trouble regarding the execution of the vga option rom. As far as i understand seabios should load all option roms existing in cbfs, but it won't. Only if i set CONFIG_VGA_ROM_RUN=y vga option rom gets loaded but whether coreboot nor seabios output is displayed. Only a blinking cursor idles until boot continues. coreboot.rom: 12288 kB, bootblocksize 1936, romsize 12582912, offset 0xb0 alignment: 64 bytes, architecture: x86 Name Offset Type Size cmos.default 0xb0 cmos_default 256 cmos_layout.bin0xb00140 cmos_layout 1984 pci8086,0166.rom 0xb00940 optionrom65536 cpu_microcode_blob.bin 0xb10980 microcode22528 config 0xb16200 raw 5457 revision 0xb17780 raw 570 (empty)0xb17a00 null 34136 fallback/romstage 0xb1ff80 stage73116 fallback/ramstage 0xb31d80 stage74814 fallback/payload 0xb44200 payload 55077 pci8086,1502.rom 0xb51980 raw 61952 bootsplash.jpg 0xb60bc0 raw 59966 (empty)0xb6f640 null 461144 mrc.cache 0xbdffc0 mrc_cache65536 (empty)0xbf null 63512 Any idea what is going wrong here? Best regards, n3ph -- Bitte benutzt GPG: http://de.wikipedia.org/wiki/GNU_Privacy_Guard USB coreboot-4.0-9736-g537283d Do 21. Mai 08:34:38 UTC 2015 romstage starting... Setting up static southbridge registers... done. Disabling Watchdog reboot... done. Setting up static northbridge registers... done. Initializing Graphics... Back from sandybridge_early_initialization() SMBus controller enabled. CPU id(306a9): Intel(R) Core(TM) i5-3320M CPU @ 2.60GHz AES supported, TXT supported, VT supported PCH type: QM77, device id: 1e55, rev id 4 Intel ME early init Intel ME firmware is ready ME: Requested 32MB UMA Starting native Platform init Rowaddr bits : 16 Column addr bits : 10 Number of ranks : 2 DIMM Capacity : 8192 MB CAS latencies : 6 7 8 9 10 11 tCKmin: 1.250 ns tAAmin: 13.125 ns tWRmin: 15.000 ns tRCDmin : 13.125 ns tRRDmin : 6.000 ns tRPmin: 13.125 ns tRASmin : 35.000 ns tRCmin: 48.125 ns tRFCmin : 260.000 ns tWTRmin : 7.500 ns tRTPmin : 7.500 ns tFAWmin : 30.000 ns rankmap[0] = 0x3 Rowaddr bits : 16 Column addr bits : 10 Number of ranks : 2 DIMM Capacity : 8192 MB CAS latencies : 6 7 8 9 10 11 tCKmin: 1.250 ns tAAmin: 13.125 ns tWRmin: 15.000 ns tRCDmin : 13.125 ns tRRDmin : 6.000 ns tRPmin: 13.125 ns tRASmin : 35.000 ns tRCmin: 48.125 ns tRFCmin : 260.000 ns tWTRmin : 7.500 ns tRTPmin : 7.500 ns tFAWmin : 30.000 ns rankmap[1] = 0x3 PLL busy...done MCU frequency is set at : 800 MHz Selected DRAM frequency: 800 MHz Minimum CAS latency : 11T Selected CAS latency : 11T Selected CWL latency : 8T Selected tRCD : 11T Selected tRP : 11T Selected tRAS : 28T Selected tWR : 12T Selected tFAW : 24T Selected tRRD : 5T Selected tRTP : 6T Selected tWTR : 6T Selected tRFC : 208T [c14] = 300 [320c] = 4024000 [d14] = 300 [330c] = 4024000 [4000] = 1c8bbb [4004] = cc186465 [400c] = a08b4 [4298] = 6cd01860 [42a4] = 41f88200 [4400] = 1c8bbb [4404] = cc186465 [440c] = a08b4 [4698] = 6cd01860 [46a4] = 41f88200 Done dimm mapping PCI:[a0] = 0 PCI:[a4] = 4 PCI:[bc] = c2a0 PCI:[a8] = 3b60 PCI:[ac] = 4 PCI:[b8] = c000 PCI:[b0] = c0a0 PCI:[b4] = c080 PCI:[7c] = 7f PCI:[70] = fe00 PCI:[74] = 3 PCI:[78] = fe000c00 Done memory map RCOMP...done COMP2 done COMP1 done FORCE RCOMP and wait 20us...done Done io registers Done jedec reset Done MRS commands High adjust 0: High adjust 1: High adjust 2: High adjust 3: High adjust 4: High adjust 5: High adjust 6: High adjust 7: High adjust 0: High adjust 1: High adjust 2: High adjust 3: High adjust 4: High adjust 5: High adjust 6: High adjust 7: High adjust 0: High adjust 1: High adjust 2: High adjust 3: High adjust 4: High adjust 5: High adjust
Re: [coreboot] x230 - vgabios
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 Log has: GET_VBIOS: 7b46 3714 8b a2 e9 VBIOS not found. If i am correct this comes from src/northbridge/intel/sandybridge/acpi.c line 95: printk(BIOS_DEBUG, GET_VBIOS: %x %x %x %x %x\n, oprom-signature, pcir-vendor, pcir-classcode[0], pcir-classcode[1], pcir-classcode[2]); But Signature should be 0x55aa: ./romheaders /home/n3ph/Stuff/coreboot/x230/files/vgabios.bin Image 1: PCI Expansion ROM Header: Signature: 0x55aa (Ok) CPU unique data: 0x80 0xe9 0x78 0xea 0x30 0x30 0x30 0x30 0x30 0x30 0x30 0x30 0x30 0x30 0x30 0x30 Pointer to PCI Data Structure: 0x0040 PCI Data Structure: Signature: 0x50434952 'PCIR' (Ok) Vendor ID: 0x8086 Device ID: 0x0106 Vital Product Data: 0x001c PCI Data Structure Length: 0x001c (28 bytes) PCI Data Structure Revision: 0x03 Class Code: 0x03 (VGA Display controller) Image Length: 0x0080 blocks (65536 bytes) Revision Level of Code/Data: 0x Code Type: 0x00 (Intel x86) Last-Image Flag: 0x80 (last image in rom) Reserved: 0x8000 Platform specific data for x86 compliant option rom: Initialization Size: 0x80 (65536 bytes) Entry point for INIT function: 0xea7e well... On 05/23/15 00:35, Michael Gerlach wrote: Greetings, i am trying to get coreboot running on x230 and have some trouble regarding the execution of the vga option rom. As far as i understand seabios should load all option roms existing in cbfs, but it won't. Only if i set CONFIG_VGA_ROM_RUN=y vga option rom gets loaded but whether coreboot nor seabios output is displayed. Only a blinking cursor idles until boot continues. coreboot.rom: 12288 kB, bootblocksize 1936, romsize 12582912, offset 0xb0 alignment: 64 bytes, architecture: x86 Name Offset Type Size cmos.default 0xb0 cmos_default 256 cmos_layout.bin0xb00140 cmos_layout 1984 pci8086,0166.rom 0xb00940 optionrom65536 cpu_microcode_blob.bin 0xb10980 microcode22528 config 0xb16200 raw 5457 revision 0xb17780 raw 570 (empty)0xb17a00 null 34136 fallback/romstage 0xb1ff80 stage 73116 fallback/ramstage 0xb31d80 stage74814 fallback/payload 0xb44200 payload 55077 pci8086,1502.rom 0xb51980 raw 61952 bootsplash.jpg 0xb60bc0 raw 59966 (empty)0xb6f640 null 461144 mrc.cache 0xbdffc0 mrc_cache65536 (empty)0xbf null 63512 Any idea what is going wrong here? Best regards, n3ph - -- Bitte benutzt GPG: http://de.wikipedia.org/wiki/GNU_Privacy_Guard -BEGIN PGP SIGNATURE- Version: GnuPG v2 iQEcBAEBAgAGBQJVX7ZoAAoJEE1l5S41evqai8kH/0nNGEejqjKAbsMKmvxIltAb jif0Ibx7VxGsaP10bqmKmWowb92zDisLG6v5mEfPBFXgCsSceQMib9WZep31t+Nu 1v1FLdnH/vYylrU4eVvqoHXBvSFnj9EcW/5vwQvkQTWALQYmoVCRw7fqUk3SliEc qa0BNOGV7vR4LLzNF7tAzY6hQd/QhmUHdWhRHxh9s5OVsKqvvRXrAGGPUBDWwNUj nHzoC7hNcFOiWbm4kf5lPPA6jkDCda8ZcN1wz2XLlT7C6FwuP8WoB+B2Pjh5knsq b3staP46IaJRpqwCBvyYYjPNeWZY87lwNMQ0iollTsRZlcOT55Q6eKBwuqoIP7U= =xlXX -END PGP SIGNATURE- -- coreboot mailing list: coreboot@coreboot.org http://www.coreboot.org/mailman/listinfo/coreboot
Re: [coreboot] x230 - vgabios
2015-05-23 1:06 GMT+02:00 Michael Gerlach n...@terminal21.de: GET_VBIOS: 7b46 3714 8b a2 e9 printk(BIOS_DEBUG, GET_VBIOS: %x %x %x %x %x\n, oprom-signature, pcir-vendor, pcir-classcode[0], pcir-classcode[1], pcir-classcode[2]); But Signature should be 0x55aa: Just to double check: did you add the vgabios with or without compression? coreboot only supports uncompressed vgabios images (while seabios allows them compressed as well, if the name matches) Patrick -- Google Germany GmbH, ABC-Str. 19, 20354 Hamburg Registergericht und -nummer: Hamburg, HRB 86891, Sitz der Gesellschaft: Hamburg Geschäftsführer: Graham Law, Christine Elizabeth Flores -- coreboot mailing list: coreboot@coreboot.org http://www.coreboot.org/mailman/listinfo/coreboot