[flashrom] Flashing Lenovo Tiny device fails

Nico Huber nico.h at gmx.de
Fri May 11 16:47:39 CEST 2018


Hello Hubert,

you'll find a patch attached and here [1]. If you do test it, please
always keep a verbose log (e.g. using flashrom's `-o logfile` option),
so we can mark your chipset as tested if it works, or help you out if
not ;)

Let me know if you need help applying the patch and compiling flashrom.

Some remarks on flashing your system (generally applies to modern Intel
systems):
  - If Lenovo enforced some write-protection (they do on their Think-
    Pads), you won't be able flash (the whole) firmware.
  - You'll need a full BIOS image that can be directly flashed, e.g. not
    just an update that only contains changed portions. OEMs sometimes
    only provide the latter.
  - The "BIOS" flash is usually shared with the Management Engine (ME).
    If configured correctly, you can't access the ME parts of the flash.
    You can add these options to make flashrom only access the BIOS
    region: `--ifd -i BIOS -N`.
    And additionally `-p internal:ich_spi_force=yes` if you want to
    write.
  - Always make a backup first.

Nico

PS. Please always keep the mailing list in CC.

[1] https://review.coreboot.org/26232

On 11.05.2018 08:49, H. Scherrer-Paulus wrote:
> Hello Nico,
> 
> thank you for the quick reply. Here comes the output from lspci -nn:
> 
> 00:00.0 Host bridge [0600]: Intel Corporation Skylake Host Bridge/DRAM
> Registers [8086:191f] (rev 07)
> 00:02.0 VGA compatible controller [0300]: Intel Corporation Skylake
> Integrated Graphics [8086:1912] (rev 06)
> 00:14.0 USB controller [0c03]: Intel Corporation Device [8086:a2af]
> 00:14.2 Signal processing controller [1180]: Intel Corporation Device
> [8086:a2b1]
> 00:16.0 Communication controller [0780]: Intel Corporation Device
> [8086:a2ba]
> 00:17.0 SATA controller [0106]: Intel Corporation Device [8086:a282]
> 00:1b.0 PCI bridge [0604]: Intel Corporation Device [8086:a2eb] (rev f0)
> 00:1f.0 ISA bridge [0601]: Intel Corporation Device [8086:a2c8]
> 00:1f.2 Memory controller [0580]: Intel Corporation Device [8086:a2a1]
> 00:1f.3 Audio device [0403]: Intel Corporation Device [8086:a2f0]
> 00:1f.4 SMBus [0c05]: Intel Corporation Device [8086:a2a3]
> 00:1f.6 Ethernet controller [0200]: Intel Corporation Ethernet
> Connection (2) I219-V [8086:15b8]
> 01:00.0 Non-Volatile memory controller [0108]: Samsung Electronics Co
> Ltd Device [144d:a804]
> 
> Kind regards,
> Hubert
> 
> On 05/10/2018 11:52 PM, Nico Huber wrote:
>> Hello Hubert,
>>
>> On 09.05.2018 13:24, H. Scherrer-Paulus wrote:
>>> Dear Sir,
>>>
>>> i am trying to find a way to flash the Bios/UEFI of Lenovo Tiny
>>> devices (M710q) from
>>> Linux. As the vendor does not supply a tool to do that (except for
>>> Windows/DOS)
>>> i tried flashrom, unfortunately with no success. This is what i get with
>>> a verbose flag set:
>>>
>>
>> looking at Lenovo's website the M710q seems to be rather new and often
>> comes with a Kaby Lake SoC. But I don't see why flashrom doesn't detect
>> that. It might just miss the PCI ID for the chipset. Can you please send
>> us the output of `lspci -nn`.
>>
>> Thanks
>> Nico
>>
> 
> 

-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0001-chipset_enable-Add-PCI-IDs-for-discrete-Kaby-Lake-PC.patch
Type: text/x-patch
Size: 1786 bytes
Desc: not available
URL: <http://mail.coreboot.org/pipermail/flashrom/attachments/20180511/0962c71c/attachment.patch>


More information about the flashrom mailing list