From 9a321884379a71b5f0986fdfb97a2b6c5bdccd8a Mon Sep 17 00:00:00 2001 From: Francis Rowe Date: Wed, 03 Sep 2014 14:13:00 -0400 Subject: Libreboot release 6 beta 6. - Added modified builddeb* scripts for Parabola GNU/Linux-libre: buildpac, buildpac-flashrom, buildpac-bucts (courtesy of Noah Vesely) - Documentation: updated all relevant areas to mention use of buildpac* scripts for Parabola users. - Documentation: added information showing how to enable or disable bluetooth on the X60 - MacBook1,1 tested! See ../docs/index.html#macbook11" - Documentation: fixed typo in ../docs/index.html#get_edid_panelname (get-edit changed to get-edid) - Documentation: added ../docs/howtos/x60_lcd_change/ (pics only for now) - Added gcry_serpent and gcry_whirlpool to the GRUB module list in the 'build' script (for luks users) - Libreboot is now based on a new coreboot version from August 23rd, 2014: Merged commits (relates to boards that were already supported in libreboot): - http://review.coreboot.org/#/c/6697/ - http://review.coreboot.org/#/c/6698/ (merged already) - http://review.coreboot.org/#/c/6699/ (merged already) - http://review.coreboot.org/#/c/6696/ (merged already) - http://review.coreboot.org/#/c/6695/ (merged already) - http://review.coreboot.org/#/c/5927/ (merged already) - http://review.coreboot.org/#/c/6717/ (merged already) - http://review.coreboot.org/#/c/6718/ (merged already) - http://review.coreboot.org/#/c/6723/ (merged already) (text-mode patch, might enable memtest. macbook21) - http://review.coreboot.org/#/c/6732/ (MERGED) (remove useless ps/2 keyboard delay from macbook21. already merged) - These were also merged in coreboot (relates to boards that libreboot already supported): - http://review.coreboot.org/#/c/5320/ (merged) - http://review.coreboot.org/#/c/5321/ (merged) - http://review.coreboot.org/#/c/5323/ (merged) - http://review.coreboot.org/#/c/6693/ (merged) - http://review.coreboot.org/#/c/6694/ (merged) - http://review.coreboot.org/#/c/5324/ (merged) - Documentation: removed the section about tft_brightness on X60 (new code makes it obsolete) - Removed all patches from resources/libreboot/patch/ and added new patch: 0000_t60_textmode.git.diff - Updated getcb script and DEBLOB script. - Updated configuration files under resources/libreboot/config/ to accomodate new coreboot version. - Removed grub_serial*.cfg and libreboot_serial*.rom, all configs/rom's are now unified (containing same configuration as serial rom's from before). - Documentation: updated ../docs/index.html#rom to reflect the above. - Updated GRUB to new version from August 14th, 2014. - Unified all grub configurations for all machines to a single grub.cfg under resources/grub/config/ - Updated flashrom to new version from August 20th, 2014 - Added getseabios and builddeps-seabios (builddeps and getall were also updated) - Added instructions to 'buildrom-withgrub' to include bios.bin.elf and vgaroms/vgabios.bin from SeaBIOS inside the ROM. - Added seabios (and sgavgabios) to grub as payload option in menu - Disabled serial output in Memtest86+ (no longer needed) to speed up tests. - MemTest86+ now works properly, it can output on the laptop screen (no serial port needed anymore). - Added getgrubinvaders, builddeps-grubinvaders scripts. Added these to getall and builddeps. - Added GRUB Invaders menu entry in resources/grub/config/grub.cfg - Added rules to builddeps-coreboot to build libpayload with TinyCurses. (added appropriate instructions to cleandeps script). - Commented out lines in resources/grub/config/grub.cfg for loading font/background (not useful anymore, now that GRUB is in text-mode). - Commented out lines in buildrom-withgrub that included backgrounds/fonts (not useful anymore, now that GRUB is in text-mode). - Added resources/utilities/i945-pwm/ (from git://git.mtjm.eu/i945-pwm), for debugging acpi brightness on i945 machines. - Added instructions for it in builddeps, builddeps-i945pwm, builddeb and cleandeps - 'build' script: removed the parts that generated sha512sum manifests (not needed, since release tarballs are GPG-signed) - 'build' script: removed the parts that generated libreboot_meta directory (not needed anymore, since _meta will be hosted in git) - Updated ../docs/index.html#build_meta (and other parts of documentation) to accomodate this change. - Documentation: simplified (refactored) the notes in ../docs/index.html#rom - 'build' script: removed the parts that generated libreboot_bin and added them to a new script: 'build-release' - Documentation: ../docs/index.html#build updated to reflect the above. - Removed 'sudo' from builddeb, builddeb-flashrom, powertop.trisquel6 and builddeb-bucts scripts (assuming that the user has it is a really bad idea). - Added all gcry_* modules to grub (luks/cryptomount): gcry_arcfour gcry_camellia gcry_crc gcry_dsa gcry_md4 gcry_rfc2268 gcry_rmd160 gcry_seed gcry_sha1 gcry_sha512 gcry_twofish gcry_blowfish gcry_cast5 gcry_des gcry_idea gcry_md5 gcry_rijndael gcry_rsa gcry_serpent gcry_sha256 gcry_tiger gcry_whirlpool - Added GNUtoo's list of GRUB modules (includes all of the gcry_* modules above), cryptomount should be working now. - Removed builddeb-bucts and builddeb-flashrom, merged them with builddeb (../docs/index.html updated accordingly) - Removed buildpac-bucts and buildpac-flashrom, merged them with buildpac (../docs/index.html updated accordingly) - Renamed builddeb to deps-trisquel (../docs/index.html updated accordingly) - Renamed buildpac to deps-parabola (../docs/index.html updated accordingly) - Documentation: removed all parts talking about build dependencies, replaced them with links to ../docs/index.html#build_dependencies - Documentation: emphasized more strongly on the documentation, the need to re-build bucts and/or flashrom before flashing a ROM image. - build-release: flashrom, nvramtool, cbfstool and bucts are no longer provided pre-compiled in binary archives, and are now in source form only. (to maximize distro compatibility). - Documentation: added ../docs/howtos/encrypted_trisquel.html showing how to setup a fully encrypted Trisquel installation (including /boot) and boot it from the GRUB payload. - 'build' script: replaced grub.elf assembly instructons, it's now handled by a utility added under resources/utilities/grub-assemble - Moved resources/grub/keymap to resources/utilities/grub-assemble/keymap, and updated that utility to use it - Documentation: removed useless links to pictures of keyboard layouts and unmodified layouts. - Removed all unused fonts from dejavu-fonts-ttf-2.34/ directory - 'buildrom-withgrub' script: updated it to create 2 sets of ROM's for each machine: one with text-mode, one with coreboot framebuffer. - Documentation: updated ../docs/index.html#rom to reflect the above - Deleted unused README and COPYING file from main directory - Removed some rm -rf .git* instructions from the get* scripts and moved them to build-release script - Split up default grub.cfg into 6 parts: extra/{common.cfg,txtmode.cfg,vesafb.cfg} and menuentries/{common.cfg,txtmode.cfg,vesafb.cfg} - buildrom-withgrub script uses these to generate the correct grub.cfg for each type of configuration. - grub_memdisk.cfg (used inside grub.elf) now only loads grub.cfg from cbfs. It no longer enables serial output or sets prefix. (menuentries/common.cfg does instead) - resources/grub/config/extra/common.cfg, added: - insmod instructions to load those modules: nativedisk, ehci, ohci, uhci, usb, usbserial_pl2303, usbserial_ftdi, usbserial_usbdebug - set prefix=(memdisk)/boot/grub - For native graphics (recommended by coreboot wiki): - gfxpayload=keep - terminal_output --append gfxterm - Play a beep on startup: - play 480 440 1 - Documentation: added note about 'fb=false' workaround for text-mode debian-installer (Trisquel net install) to ../docs/howtos/grub_boot_installer.html - Documentation: updated ../docs/howtos/grub_cbfs.html to make it safer (and easier) to follow. --- (limited to 'getcb') diff --git a/getcb b/getcb index 88ced5c..032668b 100755 --- a/getcb +++ b/getcb @@ -2,7 +2,7 @@ # getcb script: downloads coreboot and patches/deblobs it # -# Copyright (C) 2014 Francis Rowe +# Copyright (C) 2014 Francis Rowe # # This program is free software: you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by @@ -23,41 +23,7 @@ # (the idea is that this script will reproduce the coreboot directory included with this version of libreboot) -# You need the dependencies from ./builddeb to use this script. - -# -# The deblobbing target (coreboot git revision) for coreboot-libre is -# the following commit in the coreboot git repository named "master": -# -# commit 63acd22dc5366c72a7165138f5030df9523824dc -# Author: Vladimir Serbinenko -# Date: Sun Jun 1 00:26:48 2014 +0200 -# -# lenovo: Make version look like something thinkpad_acpi would accept -# -# thinkpad_acpi checks that BIOS version matches some pattern. -# Report version in this form. -# -# Not cleaned up as the idea of this patch seems to be met with resistance. -# Can make it Thinkpad-specific if the idea is accepted. -# -# Change-Id: I15e33e87e7a7f42d6a06f12fb39b5172153af8a1 -# Signed-off-by: Vladimir Serbinenko -# Reviewed-on: http://review.coreboot.org/4650 -# Tested-by: build bot (Jenkins) -# Reviewed-by: Kyösti Mälkki -# - -# -# We do not need to do a "git reset --hard 63acd22dc5366c72a7165138f5030df9523824dc" here -# because 5324/9 checkout (see below) eventually goes down to dependency 5320/9 -# which is checked out on top of 63acd22dc5366c72a7165138f5030df9523824dc -# - -# -# Use "git log" in coreboot after this is done, to see what was done. -# Also use "git diff" to see uncommited changes (after the patch was applied by this script) -# +# You need the dependencies from ./builddeb or ./buildpac to use this script. # Remove the old version that may exist # ---------------------------------------------------------------------------------- @@ -75,78 +41,47 @@ git clone http://review.coreboot.org/coreboot # there are modifications required cd coreboot -# Get patches for "native graphics initialization" on X60 and T60 +# reset to previously tested revision +git reset --hard 23aad4a83c3390dc39f7d1c1f5422f7ac54a80f3 + +# Get patches from review.coreboot.org # ---------------------------------------------------------------------------------- -# CHECKOUT (the XXXX/Y numbers are gerrit/git): -# Checks out the following from the gerrit site at http://review.coreboot.org/ -# 5324/9 review.coreboot.org (not merged in cb master on day 20140630) - apple/macbook21: Fix audio. -# 5323/9 review.coreboot.org (not merged in cb master on day 20140630) - apple/macbook21: EC handline ACPI implementation. -# 5321/14 review.coreboot.org (not merged in cb master on day 20140630) - A new port apple/macbook21. (new macbook21 port + native graphics) -# 5320/9 review.coreboot.org (not merged in cb master on day 20140630) - i945: Replace video gfx init. (X60 native graphics) -# 5320/9 is the end (locically). It's dependency 4650/29 was merged since day 20140601 (and included already in this libreboot tree, even). -# 4650/29 (merged in cb master on 20140601) - lenovo: Make version look like something thinkpad_acpi would accept -git fetch http://review.coreboot.org/coreboot refs/changes/24/5324/9 && git checkout FETCH_HEAD - -# CHERRY PICK (the XXXX/Y numbers are gerrit/git): -# Cherry picks the following from the gerrit site at http://review.coreboot.org/ -# 5345/4 review.coreboot.org (not merged in cb master on day 20140630) - lenovo/t60: Enable native intel gfx init. -# 5345//4 is the end (logically). It's dependency 5344/4, or rather 5344/5 was merged in cb master on 20140601 (and included in this libreboot tree, even) -# Note: 5345/4 is based on the older 5344/4 before the merge so isn't rebased at the time of writing. -git fetch http://review.coreboot.org/coreboot refs/changes/45/5345/4 && git cherry-pick FETCH_HEAD - -# Apply necessary patches +# Text mode patch for X60 native graphics (main patch already merged in coreboot. See 6723 on coreboot gerrit) +git fetch http://review.coreboot.org/coreboot refs/changes/25/6725/1 && git cherry-pick FETCH_HEAD + +# Backlight controls on i945 (X60/T60/macbook21) +git fetch http://review.coreboot.org/coreboot refs/changes/31/6731/6 && git cherry-pick FETCH_HEAD + +# Enable T60 native graphics +git fetch http://review.coreboot.org/coreboot refs/changes/45/5345/7 && git cherry-pick FETCH_HEAD + +# Apply necessary patches (from resources/libreboot/patch/) # --------------------------------------------------------------------------------- -mkdir src/drivers/lenovo - -touch src/drivers/lenovo/Kconfig -touch src/drivers/lenovo/Makefile.inc -touch src/drivers/lenovo/lenovo.h -touch src/drivers/lenovo/wacom.c - -git add src/drivers/lenovo - -# The above 4 files were all that were added on those changesets (5243/17, 5242/17 and 5239/19 from review.coreboot.org) -# I create empty versions of the files, and add them using "git add" -# Now I add the content to those files and all other changes, they will show up in a "git diff" which -# was used to create the "gitdiff" file used below. This is also required for applying the gitdiff. - -# THE ABOVE IS A HACK. "git add -N" I'm told can do the same thing as above, but that older versions of git do not have this. - -# The changes below are in a patch at resources/libreboot/patch/gitdiff -# These were merged manually. -# Reason for manual merge: cherry pick wouldn't work with this branch. Didn't want to rebase just to scrap it later. Manual was easier. -# Also, some of the changes were for different code (eg the 3D fix was previously for the old native graphics code, not the new one). - -# apply fix for 3D on kernel 3.12+ for X60/T60 on the new native graphics code (5320/9), -# based on manually merging 5927/11 and 5932/5 (which fix the 3D on kernel 3.12+ on X60 for the *old* replay code) from review.coreboot.org -# apply fix for backlight controls for T60 and X60, based on docs/future/index.html#x60_native_notes and docs/future/index.html#t60_native_notes -# apply fix for IR/digitizer on X60/T60 and X60 Tablet (respectively), based on manually merging 5243/17, 5242/17 and 5239/19 from review.coreboot.org -# (see notes above) - -# the changes are in separate patches under resources/libreboot/patch/ - -# copy the patches into coreboot directory -cp ../resources/libreboot/patch/*.diff . - -# apply the "git diff" patches -git apply 0000_x60t_digitizer_irda.git.diff -git apply 0001_i945_3dfix.git.diff -rm -rf 0000_x60t_digitizer_irda.git.diff -rm -rf 0001_i945_3dfix.git.diff -# apply non-git diff: X60 backlight controls -mv 0002_x60_backlight.diff src/mainboard/lenovo/x60 -cd src/mainboard/lenovo/x60 -patch devicetree.cb < 0002_x60_backlight.diff -rm -rf 0002_x60_backlight.diff -cd ../../../../ -# apply non-git diff: T60 backlight controls -mv 0003_t60_backlight.diff src/mainboard/lenovo/t60 -cd src/mainboard/lenovo/t60 -patch devicetree.cb < 0003_t60_backlight.diff -rm -rf 0003_t60_backlight.diff -cd ../../../../ +# look at resources/libreboot/patch/gitdiff to see what the whole patch looks like when all of these are applied. + +# copy all the patches here for this release +cp ../resources/libreboot/patch/0000_t60_6723_and_6725_1_extension_textmode.git.diff . +cp ../resources/libreboot/patch/0001_t60_6731_6_extension_acpi_brightness.git.diff . +cp ../resources/libreboot/patch/0002_i945_6731_6_extension_fix_uneven_backlight.git.diff . + +# Add text-mode for T60 (enables text-mode payloads like memtest, seabios, grub invaders, etc) +# Based on 6723 (merged) and 6725/1 from coreboot gerrit site (review.coreboot.org) +git apply 0000_t60_6723_and_6725_1_extension_textmode.git.diff + +# Cleanup patch for T60 ACPI backlight controls, based on 6731/6 from coreboot gerrit site (review.coreboot.org) +# Won't commit to coreboot for this release, since 6731 is currently -2'd in gerrit (on 20140824) and will be improved. +git apply 0001_t60_6731_6_extension_acpi_brightness.git.diff + +# Fix uneven backlight (also removes accoustic noise from (most likely) the inverter board underneath lcd, when reducing brightness) +# Won't commit to coreboot for this release, since 6731 is currently -2'd in gerrit (on 20140824) and will be improved. +git apply 0002_i945_6731_6_extension_fix_uneven_backlight.git.diff + +# delete the copies of the patches (not needed anymore) +rm -rf 0000_t60_6723_and_6725_1_extension_textmode.git.diff +rm -rf 0001_t60_6731_6_extension_acpi_brightness.git.diff +rm -rf 0002_i945_6731_6_extension_fix_uneven_backlight.git.diff # Run coreboot-libre deblob scripts # --------------------------------------------------------------------------------- -- cgit v0.9.1