Skip to main content

Posts

Showing posts from November, 2020

Skulls scripts - how to make the seabios_free version bootsplash showing and adding secondary payloads

I was playing with the skulls scripts  for the seabios_free to rebuild the coreboot image for the thinkpad x230, considering that, as reported on their github, it: "includes the VGA BIOS SeaVGABIOS which is free software. While technically more interesting, visually this is currently not as beautiful: The bootspash image is not shown ." The solution that I have fund is not perfect as the supported resolution by libgfxinit is limited to 1024x768, so the image is shrunk, however it does show and it works fine for me. I have replied then on this thread /issues/59 What we have to change to fix it is not the .config file present in the /x230 folder but the free-defconfig-8053595370 file to set the correct resolution to the libgfxinit adding the following: CONFIG_LINEAR_FRAMEBUFFER_MAX_WIDTH=1024 CONFIG_LINEAR_FRAMEBUFFER_MAX_HEIGHT=768 Once done we still need to add the bootsplash image as per the seabios coreboot instructions  However I think that adding on the script someth...

Coreboot on x230 - How to change the Skulls bootspash image

I assume that skulls is already installed on your x230 and you are happy with it :) however you would like to change the bootsplash image.. It seems to be simple... however it can be "tricky".. or at least it was for me..  That's because the "usable" image created by the skulls script is the "top" one only. the coreboot instructions to flash with a layout file with didn't work for me 0x00000000:0x007fffff ifdmegbe 0x00800000:0x00bfffff bios I get this error: Proceeding anyway because user forced us to. Found chipset "Intel QM77". Enabling flash write... Warning: SPI Configuration Lockdown activated. Enabling hardware sequencing due to multiple flash chips detected. OK. Found Programmer flash chip "Opaque flash chip" (12288 kB, Programmer-specific) mapped at physical address 0x0000000000000000. Error: Image size (4194304 B) doesn't match the flash chip's size (12582912 B)! So I thought it could be a good idea to flash fro...

Coreboot Skulls Seabios how to change the boot-menu-wait time

For the purpose of this guide I assume you have flashed already your Thinkpad x230 with Coreboot skulls. How you already know to do so you have flashed externally the top and (eventually) the botton rom separately using an external hardware and the skull scripts. To set a different duration of the boot menu, we need to edit the CBFS etc/ directory and set a different waiting time which the Seabios default is 2,5 seconds. To do so we need to retrieve the full image of your current bios (the 12mb skulls rom) and we can do reading the chip from internal. As usual when performing actions on the bios you need to have linux installed and to have booted your distro with iomem=relaxed option in your grub configuration and having flashrom installed. You can run  sudo flashrom -p internal:laptop=force_I_want_a_brick -r skulls.rom as you can see the -r option will read your bios..  wait until the process ends.. it will retrieve the current image of your bios (which we have named skulls.r...

A simple guide to build a static no modular and minimalist kernel - tested on Trisquel 9.0 "Etiona"

Get the necessary software and kernel the sources sudo apt-get build-dep linux linux-image-$(uname -r) sudo apt-get install libncurses-dev flex bison openssl libssl-dev dkms libelf-dev libudev-dev libpci-dev libiberty-dev autoconf apt-get source linux-image-$(uname -r) *optional - also install lzop if you want to build a kernel compressed in lzo - sudo apt install lzop Once done, to create a static no modular and minimalist kernel enter into the source directory and then run make localmodconfig this will load only the necessary modules to your system excluding any further hardware. Now what you need to do to make it static is to change some settings in the config file run make menuconfig at this point you need to find and chenge the following options inside your kernel configuration: On General setup: *Optional - kernel compression mode - select lzo and add a name in "local version" and "signature" *Optional Support for paging of anonymous memory (swap) - I have dis...