On Mon, 27 Mar 2017 16:14:53 +0200 Zoran Stojsavljevic zoran.stojsavljevic@gmail.com wrote:
[user@localhost projects]$ cat dmesg.txt | grep 00:19.0 [ 0.151652] pci 0000:00:19.0: *[8086:294c*] type 00 class 0x020000 [ 0.151694] pci 0000:00:19.0: reg 0x10: [mem 0xe1600000-0xe161ffff] [ 0.151707] pci 0000:00:19.0: reg 0x14: [mem 0xe1624000-0xe1624fff] [ 0.151721] pci 0000:00:19.0: reg 0x18: [io 0x3000-0x301f] [ 0.151802] pci 0000:00:19.0: PME# supported from D0 D3hot D3cold [ 1.489719] e1000e 0000:00:19.0: Interrupt Throttling Rate (ints/sec) set to dynamic conservative mode [ 1.611526] e1000e 0000:00:19.0: The NVM Checksum Is Not Valid *[ 1.635873] e1000e: probe of 0000:00:19.0 failed with error -5*
The Lenovo Thinkpad X200 uses a GM45 chipset. This chipset supports different ways of booting: (1) Having a boot fimrware occupy all the flash chip, if you do that the Ethernet will not work, according to the datasheet. (2) Having a boot firmware with the management engine firmware. (3) Having a boot firmware without the management engine firmware.
It is strongly advised to do (3) and follow the corresponding coreboot documentation. To get a working Ethernet with (3) you need to set a valid mac address: In the installation documentation, you are expected to use ich9gen, however if you use it this way:
$ ./ich9gen
It will not produce a valid MAC address. You must instead do something like that, and replace <A-VALID-MAC-ADDRESS> by a valid MAC address:
$ ./ich9gen --macaddress <A-VALID-MAC-ADDRESS>
To find such MAC address, you have several options: - Look if it can be found on a sticker on the bottom of your laptop. - Reflash the original flash content and get it with:
$ ifconfig -a
or:
ip link
== Side note == According to the wikipedia article on MAC Address[1], the 3 bytes on the left correspond to a vendor/organisation. So I got a valid MAC address with the methods mentioned above, and only kept the 3 bytes on the left, and tested that MAC address:
00:1f:16:00:00:00
And it worked on my Lenovo Thinkpad X200. To use that MAC address, just use:
$ ./ich9gen --macaddress
It might be possible that all addresses between 00:1f:16:00:00:00 and 00:1f:16:FF:FF:FF work, but I didn't test that.
References: ----------- [1]https://en.wikipedia.org/wiki/MAC_address#Address_details
Denis.