[coreboot] T60 with ATI has black screen

Richard Simpson coreboot at huskydog.org.uk
Sun Jun 28 16:51:49 CEST 2015


Carl-Daniel,

I am back in the factory BIOS.  I have gathered the data for Łukasz and
can upload it as soon as you send me a location.

For some reason I couldn't get the option ROM via the Linux kernel, but
only from the mapped memory.  Basically, there didn't seem to be any rom
file in the relevant /sys directory.  See below:

[rsimpson at newpercy Libreboot]$ lspci -tv
-[0000:00]-+-00.0  Intel Corporation Mobile 945GM/PM/GMS, 943/940GML and
945GT Express Memory Controller Hub
           +-01.0-[01]----00.0  Advanced Micro Devices, Inc. [AMD/ATI]
RV515/M54 [Mobility Radeon X1400]
           +-1b.0  Intel Corporation NM10/ICH7 Family High Definition
Audio Controller
           +-1c.0-[02]----00.0  Intel Corporation 82573L Gigabit
Ethernet Controller
           +-1c.1-[03]----00.0  Intel Corporation PRO/Wireless 3945ABG
[Golan] Network Connection
           +-1c.2-[04-0b]--
           +-1c.3-[0c-13]--
           +-1d.0  Intel Corporation NM10/ICH7 Family USB UHCI Controller #1
           +-1d.1  Intel Corporation NM10/ICH7 Family USB UHCI Controller #2
           +-1d.2  Intel Corporation NM10/ICH7 Family USB UHCI Controller #3
           +-1d.3  Intel Corporation NM10/ICH7 Family USB UHCI Controller #4
           +-1d.7  Intel Corporation NM10/ICH7 Family USB2 EHCI Controller
           +-1e.0-[15-18]----00.0  Texas Instruments PCI1510 PC card
Cardbus Controller
           +-1f.0  Intel Corporation 82801GBM (ICH7-M) LPC Interface Bridge
           +-1f.1  Intel Corporation 82801G (ICH7 Family) IDE Controller
           +-1f.2  Intel Corporation 82801GBM/GHM (ICH7-M Family) SATA
Controller [AHCI mode]
           \-1f.3  Intel Corporation NM10/ICH7 Family SMBus Controller
[rsimpson at newpercy Libreboot]$ ls /sys/devices/pci0000\:00/0000\:00\:01.0/
0000:00:01.0:pcie01   config                    driver
local_cpus  pci_bus  resource          vendor
0000:00:01.0:pcie08   consistent_dma_mask_bits  enable         modalias
   power    subsystem
0000:01:00.0          d3cold_allowed            firmware_node  msi_bus
   remove   subsystem_device
broken_parity_status  device                    irq            msi_irqs
   rescan   subsystem_vendor
class                 dma_mask_bits             local_cpulist  numa_node
  reset    uevent
[rsimpson at newpercy Libreboot]$

I'll try switching back to coreboot later today.

Cheers,

	Richard

On 28/06/15 13:45, Carl-Daniel Hailfinger wrote:
> Hi Richard,
> 
> On 28.06.2015 12:58, Richard Simpson wrote:
>> I have to say that knowing that you have the same T60 and that it is
>> working is a big moral boost!
> 
> Imagine how I felt when it happened to me. Fortunately that was at a
> coreboot developer meeting and we had the tools to recover in case it
> wouldn't have worked.
> 
> 
>> Yes, the VGA port is working.
>>
>> Can you possibly expand on your instructions below?
>>
>> 1) You suggest that I patch the option ROM myself.  Where would I find
>> instructions on how to do this?
> 
> I had hoped that the option ROM patching was straightforward, e.g.
> having LVDS data or somesuch in there. Comparing hexdumps of a
> memory-extracted and a biosimage-extracted option ROM showed me that
> while the differences are clearly visible, their meaning is not obvious
> (it's not EDID). So this method is probably not going to fly.
> 
> 
>> 2) If I decide that I need to extract it from a running system then I
>> presume that I need to re-flash the factory BIOS.  Can I just do this
>> with the same flashrom command that I used to flash coreboot?
> 
> You can do this with the same flashrom command you used to flash the
> image a second time. Please don't use bucts for flashing back from
> coreboot to factory BIOS, you only need it in the BIOS->coreboot direction.
> That said, I think Vladimir Serbinenko (phcoder) had a trick on how to
> modify the original BIOS so that bucts wouldn't be needed any more in
> either direction.
> 
> Łukasz Dmitrowski is one of our GSoC students and part of his project is
> to try to make such stuff easier in the future. He needs data for that,
> though.
> Richard, could you please collect the following data (as root) from the
> system while it's running the factory BIOS?
> lspci -nnvvvxxxx
> dmidecode
> video BIOS via both extraction methods (please make sure that we can
> find out which is which)
> superiotool -deV
> dmesg
> /var/log/Xorg.0.log (name may be a bit different, I want a log file from
> Xorg running on the machine while the factory BIOS is active)
> flashrom dump of the factory BIOS
> 
> Please don't send that data to the mailing list, I'll provide some space
> for you to upload it.
> 
> 
>> 3) On this page (http://www.coreboot.org/VGA_support) two ways of
>> getting the video BIOS from a running system are listed ('Retrieval via
>> Linux kernel' and 'Extraction from mapped memory').  Does it matter
>> which one I try?
> 
> AFAICS the images you get should be identical. Better check them to make
> sure.
> 
> 
>> 4) Can you be a lot more specific about what I should do about the checksum?
> 
> Either let SeaBIOS ignore the checksum:
> # cbfstool build/coreboot.rom add-int -i 0 -n etc/optionroms-checksum
> Or you correct the checksum of the option ROM itself. IIRC there is some
> tool to do that, but I coudln't find it in my bash history.
> 
> 
>> Apologies if all these instructions are in the Wiki and I have been too
>> dumb to find them.
> 
> Not sure if all of this is in the wiki. If you think anything is
> missing, please tell me so I can add it.
> 
> Regards,
> Carl-Daniel
> 
> 
>> On 27/06/15 23:19, Carl-Daniel Hailfinger wrote:
>>> On 27.06.2015 23:39, Richard Simpson wrote:
>>>> I have finally successfully flashed the BIOS on my T60 with coreboot.
>>>> Sadly, my ATI controlled screen remains completely black.  Fortunately I
>>>> can still get in via ssh.  Here is what I can deduce so far.+
>>> AFAICS you have exactly the same T60 as I have.
>>>
>>>
>>>> lspci says:
>>>> 01:00.0 0300: 1002:7145 (prog-if 00 [VGA controller])
>>>> [...]
>>>> The vgabios which I extracted from the factory bios
>>> Ah yes. Bad idea. AFAIK the factory BIOS patches the VGA optionrom at
>>> runtime with the correct values for the LVDS panel. This means you
>>> either have to patch the VGA optionrom yourself or you have to extract
>>> the VGA optionrom from the memory of the running system. If you extract
>>> it from memory, please note that the runtime patching causes the
>>> checksum to be incorrect, and you either have to fix the checksum or
>>> tell SeaBIOS to ignore the checksum.
>>>
> 
> 




More information about the coreboot mailing list