Thanks Scott, I've followed your instructions and everything seems to be
working well on my x200. I'll let you know if I experience the period
locking you mentioned. We both get this error:

error: [drm:pid0:intel_pipe_config_compare] *ERROR* mismatch in
adjusted_mode.flags(DRM_MODE_FLAG_PHSYNC) (expected 0, found 1)
pipe state doesn't match!

Any idea what it is or how to solve it? I also tried the latest 6.1
snapshot, but it persists. I also get a "RTC BIOS diagnostic error
4<invalid_time>" I'm not sure what to make of, wondering if NTP sync will
fix or not.


On Tue, Feb 28, 2017 at 12:24 AM, Scott Bonds <sc...@ggr.com> wrote:

> By popular demand (ok, just 2 people asked)...now with instructions on how
> to do this yourself: https://ggr.com/how-to-install
> -coreboot-on-your-x200.html
>
>
> On 02/27, Scott Bonds wrote:
>
>> I flashed a Lenovo x200 with Coreboot with Intel microcode enabled, ME
>> removed, and the gigabit ethernet firmware from libreboot. Everything seems
>> to work. Unlike with Libreboot, which comes with a Grub2 payload, Coreboot
>> uses the SeaBIOS payload by default and it can boot an encrypted OpenBSD
>> volume. I'm encountering what seems to be a random lockup every few days,
>> haven't had a chance to troubleshoot it yet.
>>
>> For those interested, here's the start of the thread on a similar attempt
>> using Libreboot instead:
>> https://marc.info/?l=openbsd-misc&m=147490313431099&w=2
>>
>> The upshot of using Coreboot or Libreboot is that I'm no longer
>> restricted to using mini pci-e cards that have been whitelisted by Lenovo.
>> I can use the sweet, sweet umb cards for wwan access, I can upgrade to the
>> latest iwm driver with MIMO, etc. And for those that haven't experienced an
>> x200 yet, and you're wondering why anyone would voluntarily use a 10 year
>> old laptop: the x200 is only $50 before upgrades (I like iwm, umb, an ssd,
>> new battery, new power adapter, usb3 expresscard), has a great keyboard,
>> solid build quality, good portability, good expandability (3 internal mini
>> pci-e, 1 external expresscard slot, 3 USB2 ports), and its relatively easy
>> to repair.
>>
>> Downsides are its limited to 8G of RAM and the CPU aren't as sprightly as
>> the latest+greatest (I've shifted by heavy lifting to servers so not a big
>> issue for me), extended battery only lasts about 3 hours (enough for how I
>> roll, but I can understand if you've been spoiled by an all-day battery on
>> a different laptop), VGA out instead of HDMI (can be solved by an adapter),
>> audio quality sucks (can be solved by an adapter).
>>
>> I keep 3 x200s around right now...at $50 each, it doesn't break the bank
>> to have some backups, and if one goes south its easy to just swap the hard
>> drive and go. Harder to pull off if my laptop costs $2k. ;)
>>
>> My original goal was to see what a maximally open source setup might be
>> like and got as close as I'm likely to get (for now) with
>> Libreboot+OpenBSD+ral, etc. It was pretty good--I'm excited to see what the
>> future holds as more of the stack becomes more hacker friendly.
>>
>> OpenBSD 6.0-stable (GENERIC.MP) #2: Wed Feb 15 17:18:06 PST 2017
>>   r...@maybe.ggr.com:/usr/src/sys/arch/amd64/compile/GENERIC.MP
>> real mem = 4239552512 (4043MB)
>> avail mem = 4106588160 (3916MB)
>> mpath0 at root
>> scsibus0 at mpath0: 256 targets
>> mainbus0 at root
>> bios0 at mainbus0: SMBIOS rev. 2.7 @ 0x7db28020 (8 entries)
>> bios0: vendor coreboot version "CBET4000 4.5-958-gd09dc6b" date 02/08/2017
>> bios0: LENOVO 745432U
>> acpi0 at bios0: rev 2
>> acpi0: sleep states S0 S3 S4 S5
>> acpi0: tables DSDT FACP SSDT MCFG TCPA APIC DMAR HPET
>> acpi0: wakeup devices HDEF(S4) USB1(S4) USB2(S4) USB3(S4) EHC1(S4)
>> USB4(S4) USB5(S4) USB6(S4) EHC2(S4) SLT1(S4) SLT2(S4) SLT3(S4) SLT6(S4)
>> LANC(S3) LANR(S3) SLPB(S3) [...]
>> acpitimer0 at acpi0: 3579545 Hz, 24 bits
>> acpimcfg0 at acpi0 addr 0xf0000000, bus 0-63
>> acpimadt0 at acpi0 addr 0xfee00000: PC-AT compat
>> cpu0 at mainbus0: apid 0 (boot processor)
>> cpu0: Intel(R) Core(TM)2 Duo CPU P8700 @ 2.53GHz, 1600.30 MHz
>> cpu0: FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR,PGE,MCA,CMO
>> V,PAT,PSE36,CFLUSH,DS,ACPI,MMX,FXSR,SSE,SSE2,SS,HTT,TM,PBE,
>> SSE3,DTES64,MWAIT,DS-CPL,VMX,SMX,EST,TM2,SSSE3,CX16,xTPR,
>> PDCM,SSE4.1,XSAVE,NXE,LONG,LAHF,PERF,SENSOR
>> cpu0: 3MB 64b/line 8-way L2 cache
>> cpu0: smt 0, core 0, package 0
>> mtrr: Pentium Pro MTRR support, 8 var ranges, 88 fixed ranges
>> cpu0: apic clock running at 266MHz
>> cpu0: mwait min=64, max=64, C-substates=0.2.2.2.2.1.3, IBE
>> cpu1 at mainbus0: apid 1 (application processor)
>> cpu1: Intel(R) Core(TM)2 Duo CPU P8700 @ 2.53GHz, 1600.06 MHz
>> cpu1: FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR,PGE,MCA,CMO
>> V,PAT,PSE36,CFLUSH,DS,ACPI,MMX,FXSR,SSE,SSE2,SS,HTT,TM,PBE,
>> SSE3,DTES64,MWAIT,DS-CPL,VMX,SMX,EST,TM2,SSSE3,CX16,xTPR,
>> PDCM,SSE4.1,XSAVE,NXE,LONG,LAHF,PERF,SENSOR
>> cpu1: 3MB 64b/line 8-way L2 cache
>> cpu1: smt 0, core 1, package 0
>> ioapic0 at mainbus0: apid 2 pa 0xfec00000, version 20, 24 pins
>> acpihpet0 at acpi0: 14318179 Hz
>> acpiprt0 at acpi0: bus 0 (PCI0)
>> acpiprt1 at acpi0: bus -1 (PEGP)
>> acpiprt2 at acpi0: bus 1 (RP01)
>> acpiprt3 at acpi0: bus 2 (RP02)
>> acpiprt4 at acpi0: bus 3 (RP03)
>> acpiprt5 at acpi0: bus 4 (RP04)
>> acpiprt6 at acpi0: bus -1 (RP05)
>> acpiprt7 at acpi0: bus -1 (RP06)
>> acpiprt8 at acpi0: bus 5 (PCIB)
>> acpiec0 at acpi0
>> acpicpu0 at acpi0
>> C1: bogo buffer
>> C2: bogo buffer
>> C3: bogo buffer: C1(@1 halt!), PSS
>> acpicpu1 at acpi0
>> C1: bogo buffer
>> C2: bogo buffer
>> C3: bogo buffer: C1(@1 halt!), PSS
>> acpitz0 at acpi0: critical temperature is 127 degC
>> acpitz1 at acpi0: critical temperature is 99 degC
>> acpithinkpad0 at acpi0
>> acpiac0 at acpi0: AC unit offline
>> acpibat0 at acpi0: BAT0 model "COMPATIBLE" serial 18729 type LION oem
>> "SANYO"
>> acpibat1 at acpi0: BAT1 not present
>> acpibtn0 at acpi0: SLPB
>> acpibtn1 at acpi0: LID_
>> "PNP0303" at acpi0 not configured
>> "PNP0F13" at acpi0 not configured
>> "GOOGCB00" at acpi0 not configured
>> acpidock0 at acpi0: DOCK not docked (0)
>> acpivideo0 at acpi0: GFX0
>> acpivout0 at acpivideo0: LCD0
>> cpu0: Enhanced SpeedStep 1600 MHz: speeds: 2534, 2533, 1600, 800 MHz
>> pci0 at mainbus0 bus 0
>> pchb0 at pci0 dev 0 function 0 "Intel GM45 Host" rev 0x07
>> inteldrm0 at pci0 dev 2 function 0 "Intel GM45 Video" rev 0x07
>> drm0 at inteldrm0
>> intagp0 at inteldrm0
>> agp0 at intagp0: aperture at 0xd0000000, size 0x10000000
>> inteldrm0: msi
>> inteldrm0: 1280x800
>> error: [drm:pid0:intel_pipe_config_compare] *ERROR* mismatch in
>> adjusted_mode.flags(DRM_MODE_FLAG_PHSYNC) (expected 0, found 1)
>> pipe state doesn't match!
>> wsdisplay0 at inteldrm0 mux 1: console (std, vt100 emulation)
>> wsdisplay0: screen 1-5 added (std, vt100 emulation)
>> "Intel GM45 Video" rev 0x07 at pci0 dev 2 function 1 not configured
>> em0 at pci0 dev 25 function 0 "Intel ICH9 IGP M" rev 0x03: msi, address
>> 00:1f:16:35:7d:5d
>> uhci0 at pci0 dev 26 function 0 "Intel 82801I USB" rev 0x03: apic 2 int 16
>> uhci1 at pci0 dev 26 function 1 "Intel 82801I USB" rev 0x03: apic 2 int 17
>> uhci2 at pci0 dev 26 function 2 "Intel 82801I USB" rev 0x03: apic 2 int 18
>> ehci0 at pci0 dev 26 function 7 "Intel 82801I USB" rev 0x03: apic 2 int 18
>> usb0 at ehci0: USB revision 2.0
>> uhub0 at usb0 "Intel EHCI root hub" rev 2.00/1.00 addr 1
>> azalia0 at pci0 dev 27 function 0 "Intel 82801I HD Audio" rev 0x03: msi
>> azalia0: codecs: Conexant CX20561
>> audio0 at azalia0
>> ppb0 at pci0 dev 28 function 0 "Intel 82801I PCIE" rev 0x03
>> pci1 at ppb0 bus 1
>> ppb1 at pci0 dev 28 function 1 "Intel 82801I PCIE" rev 0x03
>> pci2 at ppb1 bus 2
>> athn0 at pci2 dev 0 function 0 "Atheros AR9281" rev 0x01: apic 2 int 17
>> athn0: AR9280 rev 2 (2T2R), ROM rev 16, address 00:24:2b:c3:8c:9a
>> ppb2 at pci0 dev 28 function 2 "Intel 82801I PCIE" rev 0x03
>> pci3 at ppb2 bus 3
>> ppb3 at pci0 dev 28 function 3 "Intel 82801I PCIE" rev 0x03
>> pci4 at ppb3 bus 4
>> xhci0 at pci4 dev 0 function 0 "NEC xHCI" rev 0x04: msi
>> usb1 at xhci0: USB revision 3.0
>> uhub1 at usb1 "NEC xHCI root hub" rev 3.00/1.00 addr 1
>> uhci3 at pci0 dev 29 function 0 "Intel 82801I USB" rev 0x03: apic 2 int 16
>> uhci4 at pci0 dev 29 function 1 "Intel 82801I USB" rev 0x03: apic 2 int 17
>> uhci5 at pci0 dev 29 function 2 "Intel 82801I USB" rev 0x03: apic 2 int 18
>> ehci1 at pci0 dev 29 function 7 "Intel 82801I USB" rev 0x03: apic 2 int 16
>> usb2 at ehci1: USB revision 2.0
>> uhub2 at usb2 "Intel EHCI root hub" rev 2.00/1.00 addr 1
>> ppb4 at pci0 dev 30 function 0 "Intel 82801BAM Hub-to-PCI" rev 0x93
>> pci5 at ppb4 bus 5
>> pcib0 at pci0 dev 31 function 0 "Intel 82801IBM LPC" rev 0x03
>> ahci0 at pci0 dev 31 function 2 "Intel 82801I AHCI" rev 0x03: msi, AHCI
>> 1.2
>> ahci0: port 0: 3.0Gb/s
>> scsibus1 at ahci0: 32 targets
>> sd0 at scsibus1 targ 0 lun 0: <ATA, KINGSTON SV300S3, 60AA> SCSI3
>> 0/direct fixed naa.50026b7668019677
>> sd0: 114473MB, 512 bytes/sector, 234441648 sectors, thin
>> ichiic0 at pci0 dev 31 function 3 "Intel 82801I SMBus" rev 0x03: apic 2
>> int 18
>> iic0 at ichiic0
>> usb3 at uhci0: USB revision 1.0
>> uhub3 at usb3 "Intel UHCI root hub" rev 1.00/1.00 addr 1
>> usb4 at uhci1: USB revision 1.0
>> uhub4 at usb4 "Intel UHCI root hub" rev 1.00/1.00 addr 1
>> usb5 at uhci2: USB revision 1.0
>> uhub5 at usb5 "Intel UHCI root hub" rev 1.00/1.00 addr 1
>> usb6 at uhci3: USB revision 1.0
>> uhub6 at usb6 "Intel UHCI root hub" rev 1.00/1.00 addr 1
>> usb7 at uhci4: USB revision 1.0
>> uhub7 at usb7 "Intel UHCI root hub" rev 1.00/1.00 addr 1
>> usb8 at uhci5: USB revision 1.0
>> uhub8 at usb8 "Intel UHCI root hub" rev 1.00/1.00 addr 1
>> isa0 at pcib0
>> isadma0 at isa0
>> pckbc0 at isa0 port 0x60/5 irq 1 irq 12
>> pckbd0 at pckbc0 (kbd slot)
>> wskbd0 at pckbd0: console keyboard, using wsdisplay0
>> pms0 at pckbc0 (aux slot)
>> wsmouse0 at pms0 mux 0
>> pcppi0 at isa0 port 0x61
>> spkr0 at pcppi0
>> aps0 at isa0 port 0x1600/31
>> umodem0 at uhub2 port 4 configuration 1 interface 1 "Lenovo H5321 gw" rev
>> 2.00/0.00 addr 2
>> umodem0: data interface 2, has CM over data, has break
>> umodem0: status change notification available
>> ucom0 at umodem0
>> umodem1 at uhub2 port 4 configuration 1 interface 3 "Lenovo H5321 gw" rev
>> 2.00/0.00 addr 2
>> umodem1: data interface 4, has CM over data, has break
>> umodem1: status change notification available
>> ucom1 at umodem1
>> umb0 at uhub2 port 4 configuration 1 interface 6 "Lenovo H5321 gw" rev
>> 2.00/0.00 addr 2
>> umodem2 at uhub2 port 4 configuration 1 interface 9 "Lenovo H5321 gw" rev
>> 2.00/0.00 addr 2
>> umodem2: data interface 10, has CM over data, has break
>> umodem2: status change notification available
>> ucom2 at umodem2
>> ugen0 at uhub2 port 4 configuration 1 "Lenovo H5321 gw" rev 2.00/0.00
>> addr 2
>> ugen1 at uhub4 port 1 "AuthenTec Fingerprint Sensor" rev 2.00/17.03 addr 2
>> ugen2 at uhub4 port 2 "Lenovo Computer Corp ThinkPad Bluetooth with
>> Enhanced Data Rate II" rev 2.00/3.99 addr 3
>> vscsi0 at root
>> scsibus2 at vscsi0: 256 targets
>> softraid0 at root
>> scsibus3 at softraid0: 256 targets
>> sd1 at scsibus3 targ 1 lun 0: <OPENBSD, SR CRYPTO, 006> SCSI2 0/direct
>> fixed
>> sd1: 98084MB, 512 bytes/sector, 200876232 sectors
>> root on sd1a (45e734ea66d5f448.a) swap on sd1b dump on sd1b
>> clock: unknown CMOS layout
>> zeal(68553): mmap W^X violation
>> hw.sensors.cpu0.temp0=38.00 degC
>> hw.sensors.acpitz0.temp0=44.00 degC (zone temperature)
>> hw.sensors.acpitz1.temp0=41.00 degC (zone temperature)
>> hw.sensors.acpithinkpad0.temp0=44.00 degC
>> hw.sensors.acpithinkpad0.temp1=41.00 degC
>> hw.sensors.acpithinkpad0.temp2=41.00 degC
>> hw.sensors.acpithinkpad0.temp3=41.00 degC
>> hw.sensors.acpithinkpad0.temp4=41.00 degC
>> hw.sensors.acpithinkpad0.temp5=41.00 degC
>> hw.sensors.acpithinkpad0.temp6=41.00 degC
>> hw.sensors.acpithinkpad0.temp7=41.00 degC
>> hw.sensors.acpithinkpad0.fan0=0 RPM
>> hw.sensors.acpiac0.indicator0=On (power supply)
>> hw.sensors.acpibat0.volt0=10.80 VDC (voltage)
>> hw.sensors.acpibat0.volt1=12.55 VDC (current voltage)
>> hw.sensors.acpibat0.power0=3.61 W (rate)
>> hw.sensors.acpibat0.watthour0=68.02 Wh (last full capacity)
>> hw.sensors.acpibat0.watthour1=3.40 Wh (warning capacity)
>> hw.sensors.acpibat0.watthour2=0.20 Wh (low capacity)
>> hw.sensors.acpibat0.watthour3=66.45 Wh (remaining capacity), OK
>> hw.sensors.acpibat0.watthour4=68.04 Wh (design capacity)
>> hw.sensors.acpibat0.raw0=2 (battery charging), OK
>> hw.sensors.acpibtn1.indicator0=On (lid open)
>> hw.sensors.acpidock0.indicator0=Off (not docked), UNKNOWN
>> hw.sensors.aps0.temp0=41.00 degC
>> hw.sensors.aps0.temp1=41.00 degC
>> hw.sensors.aps0.indicator0=On (Keyboard Active)
>> hw.sensors.aps0.indicator1=On (Mouse Active)
>> hw.sensors.aps0.indicator2=On (Lid Open)
>> hw.sensors.aps0.raw0=498 (X_ACCEL)
>> hw.sensors.aps0.raw1=489 (Y_ACCEL)
>> hw.sensors.aps0.raw2=498 (X_VAR)
>> hw.sensors.aps0.raw3=489 (Y_VAR)
>> hw.sensors.softraid0.drive0=online (sd1), OK

Reply via email to