Re: [coreboot] Coreboot on X230 and Dualboot / How to make it work

2017-10-05 Thread One7two99 via coreboot
Hello Nico,

> you might have to accept that adding VGA compatibility for Windows may
> break compatibility with the secondary payloads. That"s not generally
> the case but about the last thing that gets tested.

From what I have learned so far it seems that the usecase Coreboot + Windows is 
that common which I can understand as it may sound strange to reduce the 
possible attacks via BIOS/AMT but then use an OS like Windows.

> If you don"t get this setup with SeaBIOS running, there are alterna-
> tives. One that comes to mind: Do native GFX init in coreboot, add the
> VGA blob (so far your config below) but use GRUB as primary payload and
> run SeaBIOS as secondary. You"d have to hand-craft your grub.cfg, some-
> thing like four choices: 1. Run your favorite open source OS 2. SeaBIOS
> for legacy compatibility 3. coreinfo 4. nvramcui

using grub as primary payload (instead of SeaBIOS) means that I have small 
linux running from my BIOS?
honestly this sounds like this is something that can be done by Coreboot Pro's 
to which I wouldn't count myself yet.
As my current Coreboot installation (SeaBIOS + VGA.rom) has not only break 
secondary payloads but also standby/resume, I want to rebuild my BIOS from 
scratch - unfortunately I need to wait until I have a new Clip for flashing as 
my old broke.

>> I"ve seen the following option in make nconfig for coreboot under
>> "General Setup": │ [*] Include the coreboot .config file into the ROM
>> image │
>> QUESTION: How can I extract this .config file?

> You can do that with cbfstool, e.g.
> $ build/cbfstool build/coreboot.rom extract -n config -f config.txt
> where your replace `build/coreboot.rom` with the path of your image and
> `config.txt` with the path to the output file.

I've done this but the resulting config is very short and doesn't include all 
settings which have been made in the first place.
A good approach might be:
1) Use a recommended config for X230 which will run Linux as OS and 2ndary 
payloads and Standby/Resume running
2) Change the config slightly to get windows boot running (adding a vga.rom)
Then do troubleshooting in case that the boot of secondary payloads and/or 
Standby/Resume is broken (with an included VGA.rom).
This is the config for Coreboot on a X230 which is in the coreboot wiki.
Is this the "best practise" configuration or just "a" configuration which has 
been stored there?
https://review.coreboot.org/cgit/board-status.git/tree/lenovo/x230/4.6-938-gb08d73b845/2017-08-01T23_05_52Z/config.txt
I tried to build a rom with this config but run into errors when building the 
ROM.

> Another question about your setup, do you configure anything in SeaBIOS
> that is not visible from your coreboot .config? Anything GFX related?
> splashscreen? VESA mode?

I haven't configured SeaBIOS I've just git'ed coreboot, run make nconfig and 
added SeaBIOS as Payload there.
Haven't tweaked any SeaBIOS configs.
I have seen that I can also get Seabios via GIT and then use nconfig to adapt 
that configuration, but this wasn't covered in the wiki for the x230 and as 
such I have only used the coreboot configuration screen.
Any guidance how to build a specific SeaBIOS and how to include this in 
coreboot?

>> [Devices]
>> │ Graphics initialization (Use native graphics init)
> With this option you let coreboot initialize GFX. But you also let Sea-
> BIOS run the VGA BIOS. The former will be completely overrun. I doubt
> that it causes your secondary payload trouble, though.

Ok, as soon as I have a new flash clip, I will try to investigate this.
Which settings to you suggest in "Devices > Graphics initialization"?

>> | --> Framebuffer mode (Legacy VGA text mode)
>> │ Display
>> │ -*- Enable PCIe Common Clock │
>> │ -*- Enable PCIe ASPM
>> [*] Add a VGA BIOS image
>> │ (./3rdparty/blobs/mainboard/lenovo/x230/pci8086,0166.rom) VGA BIOS
>> │ (8086,0166) VGA device PCI IDs
>>
>> [Generic Drivers]
>> │ [*] Serial port on SuperIO

> WTF?

What is the problem here? Is this a bad choice?
I took this from existing documentation without knowing what the last option is.
All other optiions

>> │ [*] Support Intel PCI-e WiFi adapters
>> │ [*] PS/2 keyboard init

> Is this required? It"s odd to set it when using SeaBIOS.

The PS/2 Keyboard init was suggested in one of the howtos.
regarding Intel PCI-e Wifi, I am not sure - I can make a test without this 
option and look if this has impact to my wifi card.

>> │ [*] Enable TPM support
>>
>> [Console]
>> │ [*] Squelch AP CPUs from early console.
>> │ [*] Send console output to a CBMEM buffer
>> │ (0x2) Room allocated for console output in CBMEM
>> │ [*] Send POST codes to an external device
>> │ Device to send POST codes to (None)
>> │ [*] Send POST codes to an IO port
>> │ (0x80) IO port for POST codes
>>
>> [System tables]
>> │ [*] Generate SMBIOS tables
>>
>> [Payload]
>> │ Add a payload (SeaBIOS) ---> │
>> │ SeaBIOS version (1.10.2) ---> │
>> │ (0) PS/2 keyboard controller initialization timeout 

Re: [coreboot] Coreboot on X230 and Dualboot / How to make it work

2017-09-29 Thread One7two99 via coreboot
Hello Nico,

> I suspect some misconfiguration or that something confuses the libpay-
> load VGA driver (which these two secondary payload rely on).

This might be true, but I don't understand why I can see the SeaBios Menu 
(Press ESC) and can also use graphical boot (Windows and Qubes OS) but the 
secondary payloads don't work.
Can you check my .config especially the setting for the VGA device?

>> If you thing I"ve missed out important steps, I am happy to hear your 
>> comments.
> Don"t think you missed anything [...] But you might do too much already.
> Especially flashing anything but the BIOS region when you want to track
> down coreboot issues makes things harder to reason about.

I had the seconday payloads booting when lynxis did the coreboot flashing.
But we flashed without adding a vga-rom so that I couldn't boot into windows.
I've extracted the vga rom and then tried to rebuild coreboot, but I  seem to 
miss some configuration to get graphical boot (vga rom) and secondary payload 
boot running.

I've seen the following option in make nconfig for coreboot under "General 
Setup":
│[*] Include the coreboot .config file into the ROM image│

QUESTION:
How can I extract this .config file? I could then extract this from my first 
flashing together with lynxis to see which settings have been applied there.

> Please attach your .config file. Nobody can say anything for sure
> with-out knowing what you chose.

I've attached the config file and will also list the activated options here:
(only enabled options are shown):

[General Setup]
│[*] Use CMOS for configuration values
│[*] Compress ramstage with LZMA
│[*] Include the coreboot .config file into the ROM image
│[*] Create a table of timestamps collected during boot
│-*- Build the ramstage to be relocatable in 32-bit address space

[Mainboard]
│Mainboard vendor (Lenovo)
│   Mainboard model (ThinkPad X230)
│   ROM chip size (12288 KB (12 MB))
│   (0x40) Size of CBFS filesystem in ROM

[Chipset]
│ *** CPU ***
│ [*] Enable VMX for virtualization
│ [*]   Set lock bit after configuring VMX
│ Include CPU microcode in CBFS (Generate from tree)
│ *** Northbridge ***
│ -*- Use native raminit
│ *** Southbridge ***
│ Flash locking during chipset lockdown (Don't lock flash sections)
│ [*] Lock down chipset in coreboot
│ *** Embedded Controllers ***
│ [*] Beep on fatal error
│ [*] Flash LEDs on fatal error
│*** Intel Firmware ***
│ [*] Add Intel descriptor.bin file
│ (3rdparty/blobs/mainboard/$(MAINBOARDDIR)/descriptor.bin)
│ [*]   Add Intel ME/TXE firmware
│ (3rdparty/blobs/mainboard/$(MAINBOARDDIR)/me.bin)
│ [*] Verify the integrity of the supplied ME/TXE firmware
│ [*]   Add gigabit ethernet firmware
│ (3rdparty/blobs/mainboard/$(MAINBOARDDIR)/gbe.bin)
│ [*] Lock ME/TXE section
│ Verified Boot (vboot)
│ Bootblock behaviour (Always load fallback)

[Devices]
│ Graphics initialization (Use native graphics init)
|   --> Framebuffer mode (Legacy VGA text mode)
│ Display
│ -*- Enable PCIe Common Clock   │
│ -*- Enable PCIe ASPM
[*] Add a VGA BIOS image
│ (./3rdparty/blobs/mainboard/lenovo/x230/pci8086,0166.rom) VGA BIOS
│ (8086,0166) VGA device PCI IDs

[Generic Drivers]
│   [*] Serial port on SuperIO
│   [*] Support Intel PCI-e WiFi adapters
│   [*] PS/2 keyboard init
│   [*] Enable TPM support

[Console]
│   [*] Squelch AP CPUs from early console.
│   [*] Send console output to a CBMEM buffer
│   (0x2) Room allocated for console output in CBMEM
│   [*]   Send POST codes to an external device
│   Device to send POST codes to (None)
│   [*]   Send POST codes to an IO port
│   (0x80)  IO port for POST codes

[System tables]
│   [*] Generate SMBIOS tables

[Payload]
│ Add a payload (SeaBIOS)  --->  │
│ SeaBIOS version (1.10.2)  ---> │
│ (0) PS/2 keyboard controller initialization timeout (milliseconds) │
│ [*] Hardware init during option ROM execution  │
│ ()  SeaBIOS config file│
│ ()  SeaBIOS bootorder file │
│ (-1) SeaBIOS debug level (verbosity)   │
│   *** Using default SeaBIOS log level ***  │
│ [*] Use LZMA compression for payloads  │
│ Secondary Payloads  --->
│   [*] Load coreinfo as a secondary payload
│   [*] Load nvramcui as a secondary payload

[Debugging]
all deactivated

kind regards

[788]#
# Automatically generated file; DO NOT EDIT.
# coreboot configuration
#

#
# General setup
#
CONFIG_COREBOOT_BUILD=y
CONFIG_LOCALVERSION=""

Re: [coreboot] Coreboot on X230 and Dualboot / How to make it work

2017-09-27 Thread One7two99 via coreboot
Hello,

after reading the dd howtos it seems that the 12 MB coreboot.rom file can be 
split like this:

# Split first 8MB of coreboot.rom (bottom-chip)
dd if=coreboot.rom of=x230-coreboot-8mb.rom bs=1024 count=$[1024*8] skip=0

# Split last 4MB of coreboot.rom (top-chip)
dd if=coreboot.rom of=x230-coreboot-4mb.rom bs=1024 count=$[1024*4] 
skip=$[1024*8]

at least this is what I did - while it was good enough that my X230 is booting 
up I still can't boot the secondary payloads (I have choosen nvramcui and 
coreinfo).

As mentioned I am writing a howto whch is target at a newbie user, who has 
basic linux skills and has just about coreboot and wants to try it out.

I've run the following steps (I've already written the howto which covers more 
information about each step, but unfortunately I can't access the wiki as an 
editor, asked for it already).

If you thing I've missed out important steps, I am happy to hear your comments.

--- on your raspberry pi ---

0) Put External Flash Clip, female jumper cables and Raspberry pi together
   (kind of a lego thing)

1) Install Raspberian on Pi using Noobs

2) Update Pi and install additional packages including 'flashrom'

3) take keyboard and palmrest of your "coreboot target laptop" (target) off
   to access the BIOS Chip(s)

4) Connect the BIOS-Clip to BIOS-chips and read the content from your pi
   (x230-default-part2-4mb.rom / x230-default-part2-8mb.rom)

5) merge the two files into one 12 MB ROM file
   (x230-default-12mb.rom)

--- on your build laptop ---

6) Copy all three files to your "build laptop" (laptop)
   Build Laptop must run Linux, this howto assumes you are using Ubuntu 16.04.3 
LTS
   (could also be installed on an USB thumbdrive or external harddrive)

7) Download Coreboot from GIT

7) Install UEFITool on laptop

8) Extract VGA BLOB from the x230-default-12mb.rom file
   save the file in the coreboot/blobs directory
   (./coreboot/3rdparty/blobs/mainboard/lenovo/x230/pci8086,0166.rom)

9) Build Coreboot Toolchain

10) Compile ifdtool located in the coreboot/utils directory

11) Extract BLOBS from x230-default-12mb.rom using ifdtool
save the files in the coreboot/blobs directory
(./coreboot/3rdparty/blobs/mainboard/lenovo/x230/descriptor.bin)
(./coreboot/3rdparty/blobs/mainboard/lenovo/x230/me.bin)
(./coreboot/3rdparty/blobs/mainboard/lenovo/x230/gbe.bin)

11b) [Optionally] Use ME_Cleaner on me.bin file )
 (also it seems that ME_Cleaner is included in Coreboot:
 Coreboot nconfig:
 Chipset > Add Intel descriptor.bin file > Add Intel ME/TXE firmware
 --> Strip down the Intel ME/TXE firmware )
 I've choosen to leave the me.bin as is until everything is working.

12) Configure Coreboot (make nconfig)
choose parameters/features and add the 4 binary blobs (step 8 and 11)

13) build coreboot image
(./coreboot/build/coreboot.rom)

14) Split coreboot.rom into two separate files to flash them to your 2 chips
(x230-coreboot-8mb.rom and x230-coreboot-4mb.rom)

15) copy both files to your Raspberry Pi

--- on your Raspberry pi ---

16) flash both files using flashrom again

17) Reboot target laptop

18) should boot up with coreboot.

[799]-- 
coreboot mailing list: coreboot@coreboot.org
https://mail.coreboot.org/mailman/listinfo/coreboot

Re: [coreboot] Coreboot+SeaBios Boot speed: ~12sec till Grub Boot Screen

2017-09-27 Thread One7two99 via coreboot
Hello Martin,

>> You don"t have serial console enabled, so that"s not the issue.
>> I would recommend going into the console menu and enabling "Send
>> console output to a CBMEM buffer".
>> Once you boot to an OS, you"ll be able to see that with cbmem, which
>> needs to be run as root.

Ok thank you for the idea, as I am running Qubes OS on my X230, I must install 
coreboot in dom0 (the core vm, where no other software should be 
running/installed).
I think I'll try to use cbmem from an ubuntu which runs on a USB-drive, so that 
I don't have to touch my Qubes Installation.

>> Everything looks ok in the config to me, so I"m not positive what
>> the issue is. We"d need to get a bit deeper into things to figure it out.

As mentioned my current configuration is far from beeing perfect, as my 
secondary payloads are shown in the coreboot (escape-key) menu but if I select 
them, they don't seem to work (blank screen).

I think that I've made something wrong splitting the compiled Coreboot.rom on 
my two Chips (4MB + 12MB) or that I am missing some other configuration steps 
after I've changed my CBFS from 0x1 to 0x4.
If you/someone can provide any guidance here, this would be great.

Before I try to reduce the bootup time I'd like to get a fully working coreboot 
including secondary payloads (mainly to use the "View Timestamps" feature).

kind regards

[799]

On Mon, Sep 25, 2017 at 6:30 PM, One7two99 via coreboot
<coreboot@coreboot.org> wrote:
> Hello Martin,
>
>
>  Original Message 
> Subject: Re: [coreboot] Coreboot+SeaBios Boot speed: ~12sec till Grub Boot
> Screen
> Local Time: 25 September 2017 3:53 AM
> From: gauml...@gmail.com
>
> Is serial console enabled? If so, disabling that will speed things up
> immensely.
>
>
> To which position in the menuconfig tree are you referencing?
> Have disabled all entries under "Console" in menuconfig but still get the
> boot delay.
> I"ve thecoreboot .config in case that this is helpfull, see attached file.
>
>
> Can you post a miniconfig? Run "make savedefconfig" and post the file
> "defconfig"?
>
>
> Sure, at your service:
>
> $ make savedefconfig && cat defconfig
> CONFIG_USE_OPTION_TABLE=y
> CONFIG_COLLECT_TIMESTAMPS=y
> CONFIG_VENDOR_LENOVO=y
> CONFIG_CBFS_SIZE=0x40
> CONFIG_VGA_BIOS=y
> CONFIG_VGA_BIOS_FILE="~/my-coreboot/MyROMs/original/vga.rom"
> # CONFIG_POST_IO is not set
> # CONFIG_POST_DEVICE is not set
> CONFIG_BOARD_LENOVO_X230=y
> CONFIG_DRIVERS_PS2_KEYBOARD=y
> # CONFIG_CONSOLE_CBMEM is not set
> CONFIG_CPU_MICROCODE_CBFS_NONE=y
> CONFIG_SEABIOS_PS2_TIMEOUT=10
> # CONFIG_DRIVERS_INTEL_WIFI is not set
> CONFIG_LPC_TPM=y
> # CONFIG_SQUELCH_EARLY_SMP is not set
> CONFIG_SEABIOS_MASTER=y
> CONFIG_SEABIOS_THREAD_OPTIONROMS=y
> CONFIG_COREINFO_SECONDARY_PAYLOAD=y
>
> Can you post timestamp information so we can see what"s using all the time?
>
>
> Unfortunately not as I haven"t been able to create a 2nd payload in order to
> read the timstamps from coreinfo.
> Coreinfo is shown in the boot menu when hitting ESC, but after launching,
> the screen goes blank and nothing happens.
> Maybe this is related to the fact, that I flashed only 4 MB of the Chip(s)
> and as such some part of the code is missing (whoch would be in the 8 MB
> part of the rom-file)?
>
> [799]
>
> --
> coreboot mailing list: coreboot@coreboot.org
> https://mail.coreboot.org/mailman/listinfo/coreboot-- 
coreboot mailing list: coreboot@coreboot.org
https://mail.coreboot.org/mailman/listinfo/coreboot

Re: [coreboot] Coreboot on X230 and Dualboot / How to make it work

2017-09-27 Thread One7two99 via coreboot
Hello,

as I can always reflash with the stock ROM I've decided to give it a try and 
splitted the generated 12 MB coreboot.rom as mentioned in my last email:

> to flash the upper 4 MB part of the BIOS:
> dd of=x230-4mb.rom bs=1M if=build/coreboot.rom skip=8
> to flash the 8 mb chip I'll try:
> dd of=x230-8mb.rom bs=1M if=build/coreboot.rom count=8

After flashing those files to both chips the Laptop boots up fine and I can 
boot Qubes and also Windows including graphics.
Unfortunately the two added Payloads are not working:

I get only a black backlight illuminated blank screen when hitting ESC and 
choosing one of the secondary Payloads.

My guess is, that something with the CBFS filesize is not correct, I've set it 
to 0x40.

Any idea how to investigate this problem further?

[799]

Question: Is the above approach correct? I tried so already once but it didn't 
work (short flashing of Power-On-button -> nothing more) [799]-- 
coreboot mailing list: coreboot@coreboot.org
https://mail.coreboot.org/mailman/listinfo/coreboot

Re: [coreboot] Coreboot on X230 and Dualboot / How to make it work

2017-09-26 Thread One7two99 via coreboot
>  Original Message 
> Subject: Re: [coreboot] Coreboot on X230 and Dualboot / How to make it work
> Local Time: 26 September 2017 12:49 PM
> UTC Time: 26 September 2017 10:49
> From: one7tw...@protonmail.com
>
> Next step is to clean the flashregion_2_intel_me.bin (me.bin) with me_cleaner 
> which is describe well.

It seems that ME_cleaner is now included in Coreboot looking at the options in 
menuconfig. As such I asssume I don't need to manually clean 
flashregion_2_intel_me.bin (me.bin)

The extracted Blobs are located at ./3rdparty/blobs/mainboard/lenovo/x230 and 
have been proper renamed and I have enabled the options under "Chipset":

*** Intel Firmware ***
[*] Add Intel descriptor.bin file
   (3rdparty/blobs/mainboard/$(MAINBOARDDIR)/descriptor.bin)
[ ]   Configure IFD for EM100 usage
[*]   Add Intel ME/TXE firmware
(3rdparty/blobs/mainboard/$(MAINBOARDDIR)/me.bin)
[*] Verify the integrity of the supplied ME/TXE firmware
  │
[*] Strip down the Intel ME/TXE firmware
[*]   Add gigabit ethernet firmware
 (3rdparty/blobs/mainboard/$(MAINBOARDDIR)/gbe.bin)

I have enlarged the CBFS under coreboot nconfig in "Mainboard"

ROM chip size (12288 KB (12 MB))
(0x10) Size of CBFS filesystem in ROM

0x10 wasn't enough, so I tried 0x20 which was enough to add corinfo as 
secondary payload. Adding also nvramcui would need a bigger CBFS.
The later works if I increase the size of CBFS to 0x40, as such I've 
proceed with this CBFS size.

I've read https://www.coreboot.org/CBFS but honestly, this information is 
currently more than I can understand (not a hardware hacker :-).
When I look at the picture from me_cleaner...
https://camo.githubusercontent.com/3ea0ff670edb94372124ad0c36bd5e2b3c522f7e/687474703a2f2f6f6936352e74696e797069632e636f6d2f3130726e3132642e6a7067
... the pictures explains to me that the Chips consists of several "areas":
Descriptor / GbE Blob / ME Firmware Blob / BIOS

Is the CBFS something like a "container" within the BIOS, which would mean that 
if I want to increase the size of the CBFS over a ceratin point I need to 
shrink ME Firmware (which is covered by the documentation from me_cleaner).
What would be the maximum CBFS size I can use without further modifications to 
the ME Firmware or will Coreboot reduce the size of the ME Firmware area to 
gain additional space automatically?

Now the obvious last step is to split the 12 MB coreboot.rom into two parts to 
flash the upper 4 MB chip and the 8 MB chip (which should include the "cleaned" 
version of Intel ME, as I have enabled "Strip down the Intel ME/TXE firmware" 
in the coreboot config).

Getting the last 4 MB of the coreboot.rom is covered by the coreboot wiki:
# to flash the upper 4 MB part of the BIOS:
dd of=x230-4mb.rom bs=1M if=build/coreboot.rom skip=8

to flash the 8 mb chip I'll try:
dd of=x230-8mb.tom bs=1M if=build/coreboot.rom count=8

Question:
Is the above approach correct? I tried so already once but it didn't work 
(short flashing of Power-On-button -> nothing more)

[799]-- 
coreboot mailing list: coreboot@coreboot.org
https://mail.coreboot.org/mailman/listinfo/coreboot

Re: [coreboot] Coreboot on X230 and Dualboot / How to make it work

2017-09-26 Thread One7two99 via coreboot
Hello Peter,

 Original Message 
Subject: Re: [coreboot] Coreboot on X230 and Dualboot / How to make it work
Local Time: 26 September 2017 11:05 AM
From: pe...@stuge.se

>> 1) How to get Coreboot running (general part)
> The 1) is quite a large topic.

Strangely that part seems to much easier as there is already excellent 
documentation available how to install all dependencies, build the toolchain.
I've verified this several times by installing coreboot on a freshly installed 
Ubuntu 16.04.3 LTS.

>> I"ve followed the howto in the coreboot wiki:
> Sure, but what do the steps in the howto actually mean?
> Why are you sure that they are correct?

I am not sure that is why I am asking :-) And I got already different answers.

>> honestly I was also wondering why this is working and even more,
>> why I am skipping the first 8MB of the file.
> Perfect! Please also *answer* those questions; they are important.

I good a better understanding after looking at the picture one the me_cleaner 
site here:
https://github.com/corna/me_cleaner/wiki/External-flashing
This picture shows the content of the Chip:
https://camo.githubusercontent.com/3ea0ff670edb94372124ad0c36bd5e2b3c522f7e/687474703a2f2f6f6936352e74696e797069632e636f6d2f3130726e3132642e6a7067
I got confused in the beginning as the X230 contains two chips which are see as 
one 12 MB chip.

As I have saved the original content of both of my chips (x230-4mb.rom and 
x230-8m.rom) I have already looked at the content of the 8 MB chip:

cd ~/coreboot/MyFactoryROM
ifdtool -x x230_8mb.rom

will extract 4 files:
flashregion_0_flashdescriptor.bin (4K) --> renamed to: descriptor.bin
flashregion_1_bios.bin (4,8M)
flashregion_2_intel_me.bin (5,0M)--> renamed to: me.bin
flashregion_3_gbe.bin (8,0K)-- > renamed to: gbe.bin

I have verified the ME image as described here
https://github.com/corna/me_cleaner/wiki/External-flashing

cd ~/coreboot/MyFactoryROM
~/me_cleaner/me_cleaner.py -c x230_8mb.rom

   Full image detected
   The ME/TXE region goes from 0x3000 to 0x50
   Found FPT header at 0x3010
   Found 23 partition(s)
   Found FTPR header: FTPR partition spans from 0x183000 to 0x24d000
   ME/TXE firmware version 8.1.71.3608
   Checking the FTPR RSA signature... VALID

Strangely the 8MB chips seems to also contains the "flashregion_1_bios.bin".
I tought that the BIOS part is located on the top 4 MB Chip.
I'd like to both files (4MB + 8MB) into one and use that with idftool.
I tried to run idftool with --chip 1 on the extracted x230-4mb.rom but this 
didn't succeed.

Next step is to clean the flashregion_2_intel_me.bin (me.bin) with me_cleaner 
which is describe well.

QUESTION:
what I am really struggling with is, is the size of the CBFS filesystem in ROM 
(can be set under Mainboard in coreboot make nconfig). I need a bigger CBFS to 
be able to run payloads but then I can't just flash the upper 4 MB chip.
As such the question is: what do I need to do with the coreboot.bin after 
compiling to be able to flash the whole 12 MB (4 mb chip + 12 mb chip).
Any help would be great here, as I am currently mainly struggling with this.

[799]-- 
coreboot mailing list: coreboot@coreboot.org
https://mail.coreboot.org/mailman/listinfo/coreboot

Re: [coreboot] Coreboot+SeaBios Boot speed: ~12sec till Grub Boot Screen

2017-09-25 Thread One7two99 via coreboot
Hello Paul,

 Original Message 
Subject: Re: [coreboot] Coreboot+SeaBios Boot speed: ~12sec till Grub Boot 
Screen
Local Time: 25 September 2017 9:17 AM
From: paulepan...@users.sourceforge.net

>> First, please just sent plain text messages to mailing lists.

ok, I'll try

>> 1. Your coreboot configuration (`.config`).

See attached.

>> 2. The output of `build/cbfstool build/coreboot.rom print`.

./coreboot/build/cbfstool ./coreboot/build/coreboot.rom print

Name   Offset Type Size
cbfs master header 0x0cbfs header  32
fallback/romstage  0x80   stage81604
config 0x13fc0raw  641
revision   0x14280raw  570
cmos.default   0x14500cmos_default 256
cmos_layout.bin0x14640cmos_layout  1804
fallback/dsdt.aml  0x14dc0raw  13643
payload_config 0x18380raw  1611
payload_revision   0x18a40raw  237
etc/ps2-keyboard-spinup0x18b80raw  8
(empty)0x18bc0null 29400
mrc.cache  0x1fec0mrc_cache65536
fallback/ramstage  0x2ff00stage79642
pci8086,0166.rom   0x43680optionrom65536
img/coreinfo   0x53700payload  1150904
fallback/payload   0x16c700   payload  67051
(empty)0x17cd40   null 2631064
bootblock  0x3ff300   bootblock3000

>> 3. Build the utility cbmem with `make -C util/cbmem`.

ok, done.

>> 4. The output of `./util/cbmem/cbmem -c`.
>> 5. The output of `./util/cbmem/cbmem -t`.

both commands fail with "Failed to gain memory access: Permission denied"

But I think before I'll try to improbe booting time, I need to make sure that:
- the 2nd part of the BIOS (the 8MB chip) is flashed
- additional payloads are working
- write proper documentation about everything to save others asking the same 
(maybe annoying) questions...

[799]-- 
coreboot mailing list: coreboot@coreboot.org
https://mail.coreboot.org/mailman/listinfo/coreboot

Re: [coreboot] Coreboot+SeaBios Boot speed: ~12sec till Grub Boot Screen

2017-09-25 Thread One7two99 via coreboot
Hello  Martin,

>  Original Message 
> Subject: Re: [coreboot] Coreboot+SeaBios Boot speed: ~12sec till Grub Boot 
> Screen
> Local Time: 25 September 2017 3:53 AM
> From: gauml...@gmail.com
>
> Is serial console enabled? If so, disabling that will speed things up
> immensely.

To which position in the menuconfig tree are you referencing?
Have disabled all entries under "Console" in menuconfig but still get the boot 
delay.
I've thecoreboot  .config in case that this is helpfull, see attached file.

> Can you post a miniconfig? Run "make savedefconfig" and post the file
> "defconfig"?

Sure, at your service:

$ make savedefconfig && cat defconfig
CONFIG_USE_OPTION_TABLE=y
CONFIG_COLLECT_TIMESTAMPS=y
CONFIG_VENDOR_LENOVO=y
CONFIG_CBFS_SIZE=0x40
CONFIG_VGA_BIOS=y
CONFIG_VGA_BIOS_FILE="~/my-coreboot/MyROMs/original/vga.rom"
# CONFIG_POST_IO is not set
# CONFIG_POST_DEVICE is not set
CONFIG_BOARD_LENOVO_X230=y
CONFIG_DRIVERS_PS2_KEYBOARD=y
# CONFIG_CONSOLE_CBMEM is not set
CONFIG_CPU_MICROCODE_CBFS_NONE=y
CONFIG_SEABIOS_PS2_TIMEOUT=10
# CONFIG_DRIVERS_INTEL_WIFI is not set
CONFIG_LPC_TPM=y
# CONFIG_SQUELCH_EARLY_SMP is not set
CONFIG_SEABIOS_MASTER=y
CONFIG_SEABIOS_THREAD_OPTIONROMS=y
CONFIG_COREINFO_SECONDARY_PAYLOAD=y

> Can you post timestamp information so we can see what"s using all the time?

Unfortunately not as I haven't been able to create a 2nd payload in order to 
read the timstamps from coreinfo.
Coreinfo is shown in the boot menu when hitting ESC, but after launching, the 
screen goes blank and nothing happens.
Maybe this is related to the fact, that I flashed only 4 MB of the Chip(s) and 
as such some part of the code is missing (whoch would be in the 8 MB part of 
the rom-file)?

[799]

coreboot-config
Description: Binary data
-- 
coreboot mailing list: coreboot@coreboot.org
https://mail.coreboot.org/mailman/listinfo/coreboot

Re: [coreboot] Coreboot on X230 and Dualboot / How to make it work

2017-09-25 Thread One7two99 via coreboot
Hello,

I tried to flash the 8 MB Chip on my X230, but it didn't worked out.

> Me: what do I need to do to flash the 2nd (8MB) chip.
> If the 1st chip contains the last 4MB of the file, I assume the correct 
> command could be:
> dd of=chip8mb.rom bs=1M if=build/coreboot.rom count=8
>
> Is this correct? If this is right I'll add this to the wiki as soon as I have 
> write permissions.

I've dd'ed the first 8MB of the coreboot.rom file with the above command and 
flashed it on the 8MB chip, but when booting my machine only illuminated the 
on-off-button for a second before it dies.

When reflashing the 8MB chip with the stock image which I grabbed before will 
bring my laptop back to life. As such it seems that there must be another was 
two flash both chips and to strip the coreboot.rom image.

Any ideas what went wrong?
As all howto's I've found so far, which cover the flashing of only the upper 4 
MB Chip, the question is also, if someone has already flashed both chips and 
what (s)he did to make it work.

[799]-- 
coreboot mailing list: coreboot@coreboot.org
https://mail.coreboot.org/mailman/listinfo/coreboot

Re: [coreboot] Coreboot on X230 and Dualboot / How to make it work

2017-09-25 Thread One7two99 via coreboot
Hello Peter,

>  Original Message 
> Subject: Re: [coreboot] Coreboot on X230 and Dualboot / How to make it work
> Local Time: September 25, 2017 1:25 AM
> From: pe...@stuge.se
>
> As you document your experience, please investigate what is specific
> for the X230, and what is not - and be clear in what you write.
> (Most things are in no way X230-specific.)

yes, you are right most stuff is not X230-specific, but while I am currently 
learning how to flash my X230 I am collecting information from various sites.
From a newbie perspective I'd like to get this information from one or two 
locations:
1) How to get Coreboot running (general part)
2) How to flash the X230

>> Most howtos include that it is sufficient to flash only the upper
>> 4MB BIOS Chip and leave the 2nd 8 MB BIOS Chip untouched.
>
> I would consider that bad advice, if coreboot.rom is 12 MB.
> There are not "two BIOSes" just because there are two memory chips.
> The two memory chips are mapped after each other and function as one
> unit. The CPU sees them as one, and so should you.

Thanks, I know, what I've meant: there are two physical chips which are seen as 
one by the mainboard.

>> After creating my 12 MB Coreboot.rom I split it and use only 4MB
>> for flashing.
>
> So you flash only the last third of the CBFS, and ignore the beginning.
> I think it is just luck that your system boots at all. If you used a
> larger payload such as a kernel then your method will likely cut the
> payload in half and end up writing incomplete junk to your flash.

I've followed the howto in the coreboot wiki:
https://www.coreboot.org/Board:lenovo/x230#Hardware_Flashring

"(...)
Write the flash. Since you have to write only top 4M, first split out those 4M:
dd of=top.rom bs=1M if=build/coreboot.rom skip=8
(...)"

This is exactly what I have done, honestly I was also wondering why this is 
working and even more, why I am skipping the first 8MB of the file.
Can someone provide guidance how to split the generated 12 MB coreboot.rom file 
into two to flash them to the 1st (4MB) and 2nd (8MB)

to flash the 4MB chip (from the coreboot wiki):
dd of=chip4mb.rom bs=1M if=build/coreboot.rom skip=8

QUESTION:
what do I need to do to flash the 2nd (8MB) chip.
If the 1st chip contains the last 4MB of the file, I assume the correct command 
could be:
dd of=chip8mb.rom bs=1M if=build/coreboot.rom count=8

Is this correct? If this is right I'll add this to the wiki as soon as I have 
write permissions.

>> Or is the 2nd BIOS not used at all after flashing Coreboot to the
>> top 4MB chip?
>
> Please study the hardware you are working with. What software you put
> in either memory is not relevant for how the hardware works, for how
> the two memories are mapped to physical CPU addresses.

Honestly I am trying to understand as much as I can, but understanding more 
about coreboot need some knowledge I am just started to learn, while I knew 
what AMT is, I have never heard of EHCI.
The good thing is, that a good howto is often written or improved by an 
interested user, not the tech-power. As such I am happy to contribute to the 
documentation to make it easier for the next newbie who might not be interested 
in how his CPU works, but wants to reduce possible entry points which might 
break his privacy :-)

[799]-- 
coreboot mailing list: coreboot@coreboot.org
https://mail.coreboot.org/mailman/listinfo/coreboot

[coreboot] Coreboot+SeaBios Boot speed: ~12sec till Grub Boot Screen

2017-09-24 Thread One7two99 via coreboot
Hello,

Booting to my Grub Selection screen takes ~12sec on my X230, loosing lots of 
second from pressing the Power Button to the "Hit Escape Key" message from 
SeaBios.
Are there any options to accelerate this and what are you Booting times to the 
Grub OS selection screen?

[799]-- 
coreboot mailing list: coreboot@coreboot.org
https://mail.coreboot.org/mailman/listinfo/coreboot

Re: [coreboot] Coreboot on X230 and Dualboot / How to make it work

2017-09-24 Thread One7two99 via coreboot
Hello Matt,

>  Original Message 
> Subject: Re: [coreboot] Coreboot on X230 and Dualboot / How to make it work
> Local Time: September 23, 2017 10:59 PM
> From: matt.devill...@gmail.com
> coreboot + Tianocore/CorebootPayloadPkg works perfectly well to run Windows 
> on everything from SandyBridge to Skylake

I'll stick to coreboot + SeaBios as I can boot linux/windows which perfectly 
fine and the installation seems to be easier and I can't see any reason why 
switching from (Sea)BIOS to UEFI.

One additional general question regarding the flashing on X230s.
Most howtos include that it is sufficient to flash only the upper 4MB BIOS Chip 
and leave the 2nd 8 MB BIOS Chip untouched.
After creating my 12 MB Coreboot.rom I split it and use only 4MB for flashing.
See also the Coreboot Wiki at 
https://www.coreboot.org/Board:lenovo/x230#Hardware_Flashring
"(...) Write the flash. Since you have to write only top 4M, first split out 
those 4M:
dd of=top.rom bs=1M if=build/coreboot.rom skip=8
Use flashrom to flash top.rom (...)"

As far as I understand the 2nd Chip include the Intel Mangement Engine (ME), 
shouldn't this chip also touched and (at least party) ME'cleaned?
Or is the 2nd BIOS not used at all after flashing Coreboot to the top 4MB chip?

[799]-- 
coreboot mailing list: coreboot@coreboot.org
https://mail.coreboot.org/mailman/listinfo/coreboot

Re: [coreboot] Coreboot on X230 and Dualboot: works = Qubes 3.2 + Win 10 Enterprise

2017-09-23 Thread One7two99 via coreboot
Hello Peter,

 Original Message 

> Subject: Re: [coreboot] Coreboot on X230 and Dualboot / How to make it work
> Local Time: September 23, 2017 10:01 PM
>
>>> VGA init can be proper without Windows being able to boot.

I know, this was the setup I had before, but having a PC which is unable to run 
windows is sometimes a no-go :-)

> Windows will require SeaBIOS. (In theory perhaps TianoCore+CorebootPkg
> works too, but I wouldn"t bet on that.)
> Windows will also require the VGA BIOS.

I am currently only using SeaBIOS and the vga.rom and SUCCESS, I am able to 
boot into my Qubes 3.2 installation AND (!) my Windows 10 Enteprise, whis is 
great as this was broken after switching to Coreboot.

> If you have SeaBIOS then I recommend letting SeaBIOS run the VGA BIOS.

I don't really understand what this means, when I document my setup/coreboot 
configuration, I am happy for any suggestion how to improve it.

>> 1) Devices > Add a Video Bios Table (VBT) binary to CBFS (yes or no?)
> No - the VGA BIOS creates a VBT. Is that not documented sufficiently?

Maybe I don't get it, but in menuconfig I have disabled this option.

>> 2) Devices > Graphic initialization (currently: use native graphics init)
>> (should I switch this to: Run VGA Option Roms?)
> No - disable graphics init in coreboot and let SeaBIOS run your VGA BIOS.

Ok, I'll try that and will disable graphic initalization in coreboot.
As mentioned with the current setting I can boot into Linux and Windows 10.
Is there any benefit disabling native graphics init in coreboot?

> As you can find in SeaBIOS docs, that requires the VGA BIOS to be
> stored with the correct name in CBFS, which coreboot may or may not
> do automatically. (It should, but bugs.)
> If you store the VGA BIOS with a name in CBFS containing a special
> subdirectory (I think vgaroms/) then the rest of the filename doesn"t
> matter.

I think some documentation here would be great, as I am currently a bit lost.
What I got from your reply, it is possible that coreboot will use the  vga.rom 
but it can also be handled by SeaBIOS, do I need to modify any additional 
things there (in SeaBIOS)?

> You can of course always add the VGA BIOS file to CBFS manually, if you
> want it to have a particular name in CBFS. It is not neccessary that the
> coreboot build system adds it.

I need to do some more reading about CBFS ... currently I am just happy that I 
got coreboot working for dualbooting Qubes and Win 10.

I'll do some more testing to see if everything works (external display / 
standby/resume / LTE/etc)

What has been improved already:
Booting up Qubes OS doesn't can also be done with graphical but, before 
including vga.rom into coreboot I had to edit grub.
In order to enter my passphrase to unlock my LUKS encrypted drive in Qubes I 
had to change grub to boot in "console mode" instead of relying on graphics:

sudo nano /etc/default/grub
GRUB_TERMINAL_OUTPUT="vga_text"
Remove rhgb quiet from GRUB_CMDLINE_LINUX

I've rolled back these changes and now I get the graphical splash screen during 
boot. Nice:-)

[799]-- 
coreboot mailing list: coreboot@coreboot.org
https://mail.coreboot.org/mailman/listinfo/coreboot

Re: [coreboot] Coreboot on X230 and Dualboot / How to make it work

2017-09-23 Thread One7two99 via coreboot
Hello Matt,

>  Original Message 
> From: matt.devill...@gmail.com
> ME >> Question: Can I use this file for my X230?
>
> absolutely not. You need to use one which is for your GPU/platform, and 
> configured to match the outputs on your x230. Which is why it's best to 
> extract from the vendor firmware using UEFITool

Thank your, I (think at least) I have succesfully extracted the information 
from my BIOS Rom File.
This is was I did (running Ubuntu 16.04.3 LTS from USB):

- Install QMAKE as this is needed to build UEFIToool
sudo apt-get install qt5-default qt5-make
- Get UEFITool from GIT
git clone http://github.com/LongSoft/UEFITool.git
- Compile UEFITool
cd UEFITool/ && qmake && make
- Start: ./UEFITool
- File > Open BIOS Image File
Open the ROM-file from the 4MB BIOS-Chip
will generate the following (error?) messages - which I ignored:
"parseVolume: unknown file system FFF12B8D-7696-4C8B-A985-2747075B4F50
parseBios: volume size stored in header 61000h (397312) differs from calculated
using block map 4h (262144)
parseVolume: unknown file system 00504624-8A59-4EEB-BD0F-6B36E96128E0
parseBios: volume size stored in header 2F000h (192512) differs from calculated 
using block map 3h (196608)
parseFile: invalid data checksum"
- Hit CTRL+F (Search...), 3rd Tab (Text)
- Search for: VGA Compatible BIOS
(Uncheck Unicode)
- Will show the following message:
ASCII text "VGA Compatible BIOS" found in Raw section at offset 22h
- Double click on the line in the message windows which bring you to the raw 
section
- Right Click on "Raw section" and choose "Extract Body"
- Save file as vga.rom

If the above procedere is correct I would like to add it to the Coreboot Wiki 
as currently the documentation is present on other pages, but as newbie (like 
me) has to look at various pages - also how and what packages I need to install 
to compile UEFITool etc.

I guess the next step is to link to this vga BLOB when running make menuconfig 
in coreboot under DEVICES > ADD A VGA BIOS IMAGE.

QUESTION:
add which location should I place my extracted vga blob, so that it can be 
found during the Coreboot Build process, I am currently referencing  the whole 
path, I tried to place into
3rdparty/blobs/mainboard/lenovo/x230 where I have also placed the other 
extracted blobs from my 8MB BIOS Chip (descriptor.bin  gbe.bin  me.bin) but it 
didn't work.

What other settings are suggested to get proper vga initialization to be able 
to boot windows:

1) Devices > Add a Video Bios Table (VBT) binary to CBFS (yes or no?)
2) Devices > Graphic initialization (currently: use native graphics init)
(should I switch this to: Run VGA Option Roms?)

[799]-- 
coreboot mailing list: coreboot@coreboot.org
https://mail.coreboot.org/mailman/listinfo/coreboot

Re: [coreboot] Coreboot on X230 and Dualboot / How to make it work

2017-09-23 Thread One7two99 via coreboot
 Original-Nachricht 
an 23. Sep. 2017, 16:56, Klemens Nanni schrieb:

>> These are 4/8 *mebi*byte in size.

Yes of course ;-) just a typo as I am more used working with GB than MB these 
days...

>> Web search shows X230 uses UEFI
>> so you'll need UEFITool instead.

Thanks, I'll give this a try.

The Coreboot Wiki states that it is also possible to get the VGA blob from 
Intel itself:

"(...) For Intel onboard graphics you can download the vbios (vga bios) from 
Intel's download section. The vbios is included with some versions of the 
graphics driver. The summary will say something like "NOTE:These materials are 
intended for use by developers.Includes VBIOS". The actual vbios file is the 
*.dat file included with the graphics driver. (...)"

Unfortunately a Link to the correct download page at Intels Website to get the 
VGA BIOS is the only missing information.

I've searched for Intel VBIOS and found the following page:

https://downloadcenter.intel.com/download/26069/Intel-Embedded-Media-and-Graphics-Driver-for-VBIOS-build-3967-v36-2-11-32-bit-Install-Package

"(...) This install package downloads the Intel® Embedded Media and Graphics 
Driver for VBIOS (build #3967), 32-bit.
This is the graphics driver installation package for the Intel® Atom™ Processor 
E3800 product family and the Intel® Celeron® Processor N2920/J1900, bundled 
with user guide and release notes text files.
The 32-bit VBIOS supports legacy boot and could be used at both 32-bit or 
64-bit operating system booting. (...)"

As it only mentions the Intel Atom and Celeron CPUs I am unsure if I should try 
to use the VBIOS for my X230 which has a Core i5 CPU.

Within the Zip-file you can find a file named "Vga.dat" (64k Size) in the 
folder IEMGD_HEAD_VBIOS\Release which is the VBIOS file according to the 
Coreboot wiki.

Question: Can I use this file for my X230?

[799]-- 
coreboot mailing list: coreboot@coreboot.org
https://mail.coreboot.org/mailman/listinfo/coreboot

[coreboot] Coreboot on X230 and Dualboot / How to make it work

2017-09-23 Thread One7two99 via coreboot
Hello,

After some initial help from Lynxis/AFRA Berlin I got my X230 initial flashed 
with coreboot.
After getting the proper equipment I have now also reflashed several time both 
Chips to understand how the build and flashing process works.
Booting Linux/Qubes is working great with Coreboot. Also no impact on 
Peripherals like LTE card, battery runtime.

I would like to rebuild my Coreboot now so that it supports dualbooting (Linux 
/ Windows).

Most howtos for the X230 only cover the flashing without supporting graphical 
boot.
The wiki page http://www.coreboot.org/VGA_support seem to cover some part, but 
is not specific to the X230.

Has someone build coreboot including the support for graphics from startup to 
be able to boot into windows?

I'm interested in what to choose in "make menuconfig" and where to get the vga 
bios rom for the x230, I would then condense the information in a X230 How-to 
for Dualboot-Setup.

[799]-- 
coreboot mailing list: coreboot@coreboot.org
https://mail.coreboot.org/mailman/listinfo/coreboot

Re: [coreboot] ECC’17: Fund developer travel costs

2017-09-22 Thread One7two99 via coreboot
Hello,

On 22.09.2017 08:44, Paul Menzel wrote:

Dear coreboot folks, The European coreboot conference 2017 is around the corner 
and starts on October 26th. Are there developers who need funding of their 
travel costs?

Are there any plans to raise funds for travel costs? I have seen companies 
giving more money for much less usefull events ;-)

Is there something like a fundraising group within the Coreboot community?

-=/799/=-

--
Send via wireless magic technology using ProtonMail mobile

 Original-Nachricht 
An 22. Sep. 2017, 11:05, Zaolin schrieb:

> We can also help out to finding cheap hotels if needed.
> In order to do so, please contact Justine Spalik:
>
> [justine.spa...@9elements.com](mailto:justine.spa...@9elements.com?subject=Contact%20from%20Website%3A%20ECC%2717)
>
> On 22.09.2017 08:44, Paul Menzel wrote:
>
>> Dear coreboot folks,
>>
>> The European coreboot conference 2017 is around the corner and starts
>> on October 26th [1].
>>
>> Are there developers who need funding of their travel costs? Kyösti,
>> Arthur, Patrick, …? Please tell the community and note the amount.
>>
>> Until we know for sure, it’d be great if the coreboot community members
>> would be willing to fund some of these costs.
>>
>> Thanks,
>>
>> Paul
>>
>> [1]
>> https://ecc2017.coreboot.org/-- 
coreboot mailing list: coreboot@coreboot.org
https://mail.coreboot.org/mailman/listinfo/coreboot

Re: [coreboot] Berlin Meeting 21. Sep Thursday @afra_berlin

2017-09-17 Thread One7two99 via coreboot
Hello Alexander,

 Original-Nachricht  An 17. Sep. 2017, 02:39, Alexander Couzens 
schrieb:

> Next meeting is coming.
> 21.09.2017 18:30 (open end) AfRA
> (different location!)

Thank you for the reply.
Great news - I'm happy to join as a Coreboot-newbie.

>> PS: If you want to flash your laptop, send me a notice in advance.

If possible I'd like to, but in a less agressive way (afraid to remove the 
Bios-Chip physically).
I also would like to setup Coreboot with vga-blob/SeaBios which seems to be a 
bit more complicated.

If needed I can figure out the Type of BiosChip in advance.

Kind regards

- O7-- 
coreboot mailing list: coreboot@coreboot.org
https://mail.coreboot.org/mailman/listinfo/coreboot

[coreboot] Intro and Support for flashing Coreboot to X230 (Qubes OS)

2017-09-15 Thread One7two99 via coreboot
Hello,

my first posting to this group after reading for a while using the 
mailman-archives.
I was interested in Coreboot for a while but my laptops were not on the HCL.
After using Qubes OS on my corporate laptop on a 2nd SSD for a while I made the 
decision to use a better supported laptop for Qubes OS which should also be 
coreboot'ed.

As such I'm writing this from a Lenovo X230 and after reading several howto's I 
think I'm ready to coreboot, but even more interested to know someone who did 
so in Berlin and could support me with either coreboot'ing as I would need to 
buy all the equipment to do so. I'm happy to buy 
 to be fair.

Question:
When is the next Coreboot-meeting taking place?

Kind regards from Berlin.

17299.

Sent with [ProtonMail](https://protonmail.com) Secure Email.-- 
coreboot mailing list: coreboot@coreboot.org
https://mail.coreboot.org/mailman/listinfo/coreboot