summaryrefslogtreecommitdiffstats
path: root/docs/future/gnutoo_fallback_patch
diff options
context:
space:
mode:
authorFrancis Rowe <info@gluglug.org.uk>2014-09-03 14:13:00 (EDT)
committer Michał Masłowski <mtjm@mtjm.eu>2014-09-03 14:22:56 (EDT)
commit9a321884379a71b5f0986fdfb97a2b6c5bdccd8a (patch)
tree7a89b0126c7572c39b00a133dc3bb43d00349871 /docs/future/gnutoo_fallback_patch
parentd2ebc60a339b66fe067ebc244ef31c600d57d541 (diff)
downloadlibreboot-9a321884379a71b5f0986fdfb97a2b6c5bdccd8a.zip
libreboot-9a321884379a71b5f0986fdfb97a2b6c5bdccd8a.tar.gz
libreboot-9a321884379a71b5f0986fdfb97a2b6c5bdccd8a.tar.bz2
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.
Diffstat (limited to 'docs/future/gnutoo_fallback_patch')
-rw-r--r--docs/future/gnutoo_fallback_patch182
1 files changed, 182 insertions, 0 deletions
diff --git a/docs/future/gnutoo_fallback_patch b/docs/future/gnutoo_fallback_patch
new file mode 100644
index 0000000..50af779
--- /dev/null
+++ b/docs/future/gnutoo_fallback_patch
@@ -0,0 +1,182 @@
+<GNUtoo-irssi> I documented it
+<GNUtoo-irssi> but I should update the page
+<GNUtoo-irssi> somehow it works without any but one of my extra patches
+<GNUtoo-irssi> but it has 1 small issue
+<phcoder-1creen> GNUtoo-irssi: do you need review on those? I think that sth like it could save me countless external reflashs
+<GNUtoo-irssi> phcoder-1creen: well, most of them are unnecessary now
+<GNUtoo-irssi> 1 patch is usefull only for improving code readability of existing coreboot code
+<GNUtoo-irssi> 1 patch is only changing the reboot count of the fallback mecanism
+<GNUtoo-irssi> beside that I see nothing remaining
+<GNUtoo-irssi> but I can check again
+<GNUtoo-irssi> I have to do it now
+<GNUtoo-irssi> The documentation is on the wiki
+<GNUtoo-irssi> caveats:
+<GNUtoo-irssi> 1) sometimes the x60 reboots twice,
+<GNUtoo-irssi> for instance if you run poweroff, then let it power down, and as soon as it seems powered down, you press the power button
+<GNUtoo-irssi> in that case it will do a reset
+<GNUtoo-irssi> 2) suspend/resume and userspace needs some handling, I've systemd units for booting only, but not for suspend/resume
+<GNUtoo-irssi> but you can do it by hand
+<GNUtoo-irssi> config MAX_REBOOT_CNT
+<GNUtoo-irssi> <tab>int
+<GNUtoo-irssi> <tab>default 1
+<GNUtoo-irssi> that's what I added in src/mainboard/lenovo/x60/Kconfig
+<GNUtoo-irssi> before I had a patch to make it selectable it in Kconfig,
+<GNUtoo-irssi> that is to say the user enter the max reboot count he wants
+<GNUtoo-irssi> I think the global default is 3
+<GNUtoo-irssi> Then I've some other interesting patches
+<GNUtoo-irssi> I wonder if they're acceptable
+<GNUtoo-irssi> one patch is for adding etc/grub.cfg from Kconfig
+<GNUtoo-irssi> Use case: the user builds once, he do ./build/cbfstool ./build/coreboot.rom add -n etc/grub.cfg -f grub.cfg -t raw
+<GNUtoo-irssi> but he re-do make
+<GNUtoo-irssi> and forgett to re-add grub.cfg
+<GNUtoo-irssi> it's just a convenience
+<GNUtoo-irssi> (he could do it with a script too)
+<GNUtoo-irssi> *he/she
+<GNUtoo-irssi> I guess the user is a she in english?
+<GNUtoo-irssi> en french it's a he
+<GNUtoo-irssi> I've also a flashrom patch to submit
+<GNUtoo-irssi> phcoder-1creen: "it could save me countless external reflashs" => that was exactly my use case
+<GNUtoo-irssi> There are some other interesting stuff that could extend the use case:
+<GNUtoo-irssi> there is a flash log for the chromebooks
+<GNUtoo-irssi> example use case: you go to a conference in the USA, you are in the plane
+<GNUtoo-irssi> you then continue developing there, you reflash etc...
+<GNUtoo-irssi> but then you need the log of the failed boot somehow
+<GNUtoo-irssi> the flash log (which is in coreboot but require CONFIG_CHROMEOS or something like that) could help with that second use case
+<GNUtoo-irssi> Else the logs in RAM + a watchdog could also do the trick
+<GNUtoo-irssi> *hardware watchdog
+<GNUtoo-irssi> so that second approach of the second use case would just require some modifications related to cbmem
+<GNUtoo-irssi> they may already be there, because I'm way out of the loop
+<GNUtoo-irssi> I'll make a list of the interesting patches I have locally
+<GNUtoo-irssi> and look at gerrit too
+<GNUtoo-irssi> btw, is there some easy infrastructure work to do?
+<GNUtoo-irssi> like something that can be done on the side
+* ttyS3 has quit (Ping timeout: 264 seconds)
+<GNUtoo-irssi> The x60[s/t], T60(with intel GPUs), are mostly complete, the main issue remaining is merging that improved GPU init code
+<GNUtoo-irssi> fallback/ is mostly merged but that one patch I was talking about
+<GNUtoo-irssi> then I guess the ACPI part was merged
+<GNUtoo-irssi> I'm unsure about the IRDA
+<GNUtoo-irssi> I mostly test on x60t nowadays
+<GNUtoo-irssi> (my t60 has a nasty bug with ctrl+d, probably ec related)
+<GNUtoo-irssi> I've also to look about the security of the I/Os
+<GNUtoo-irssi> (like what's on the dock connector)
+<GNUtoo-irssi> there is also the license issue of the microcodes inside the headers
+<GNUtoo-irssi> I'll add all that in the wiki
+<phcoder-1creen> GNUtoo-irssi: did you test digitizer?
+<GNUtoo-irssi> yes
+<GNUtoo-irssi> works well with libreboot 6 beta3 patches on top of coreboot git
+<GNUtoo-irssi> I use it often
+<GNUtoo-irssi> with xournal mainly
+<GNUtoo-irssi> I've been in a local shop and I've found a compatilble wacom pen: it has:
+<GNUtoo-irssi> touch, button(right click), eraser
+<GNUtoo-irssi> all do work
+<GNUtoo-irssi> the pen is not the x60 pen, but it does work fine
+<phcoder-1creen> digitizer patches are already in
+<GNUtoo-irssi> The screen's directional keys the its middle key work
+<GNUtoo-irssi> yes
+<GNUtoo-irssi> I'll update soon
+<GNUtoo-irssi> I'll probably sumarize the patch I've left in the wiki
+<GNUtoo-irssi> and update that fallback page
+<GNUtoo-irssi> phcoder-1creen: is the IRDA supposed to work?
+<phcoder-1creen> GNUtoo-irssi: 5243
+<phcoder-1creen> T60, rght?
+* KidBeta has quit (Quit: My MacBook Pro has gone to sleep. ZZZzzz…)
+<GNUtoo-irssi> x60 and x60t
+<GNUtoo-irssi> oops
+<GNUtoo-irssi> x60t and t60
+<GNUtoo-irssi> I'll test them together, I was trying lirc instead directlyt
+<phcoder-1creen> 5242 for X60
+<GNUtoo-irssi> ok
+<GNUtoo-irssi> thanks
+<phcoder-1creen> GNUtoo-irssi: did you see x200 port?
+<GNUtoo-irssi> yes
+<GNUtoo-irssi> what CPU is it?
+<GNUtoo-irssi> and what chipset?
+<phcoder-1creen> gm45. Intel GPU
+<GNUtoo-irssi> ok
+<GNUtoo-irssi> I've looked at your new ports and related,
+<GNUtoo-irssi> it probably cover the chipset I have in my N71JQ
+<GNUtoo-irssi> but I probably don't have time to do the port anytime soon
+<phcoder-1creen> gm45 was already covered by rk9
+<GNUtoo-irssi> yes
+<GNUtoo-irssi> it's core 2 duo with the first AMT in the NICs, right?
+<GNUtoo-irssi> and 64bit?
+<phcoder-1creen> it's 64bit. I can't tell anything about AMT.
+<GNUtoo-irssi> so I guess that if someone unsolder his nic firmware flash, the AMT is gone?
+<GNUtoo-irssi> ok
+<GNUtoo-irssi> if so that's probably a good tradeoff
+<GNUtoo-irssi> you get more recent laptops at the cost of unsoldering or blanking the NIC's flash
+<phcoder-1creen> ME firmware is in the flash chip. There is information that on gm45 you can remove ME firmware without any consequences but I din't really try
+<GNUtoo-irssi> assuming it's like with the old i945 laptops
+<GNUtoo-irssi> ok, wow, nice
+<GNUtoo-irssi> how fast is it in between the T60's and the Nehalem's laptops(x201)
+<phcoder-1creen> roda rk9 runs without ME firmware AFACIT
+<GNUtoo-irssi> ok
+<GNUtoo-irssi> about roda and so on, there isn't a lot of infos on the rugged laptops
+<GNUtoo-irssi> I guess that nobody still test on them
+<phcoder-1creen> No. But the list of connectors they have is truly impressive. As is battery capacity and heaviness.
+<GNUtoo-irssi> indeed
+<GNUtoo-irssi> it probably has lot of interesting peripherals too, like GPS, 3g modem(how is it connected?) and so on
+<GNUtoo-irssi> for the heavyness, it's a way to make geeks become like rambo?
+<GNUtoo-irssi> s/geeks/geeks and nerds
+<phcoder-1creen> 3g modems are optional. I guess it's minipcie slot.
+<phcoder-1creen> BTW x200 has 3 minipcie slots
+<GNUtoo-irssi> wow
+<phcoder-1creen> (not counting exprecsscard)
+<GNUtoo-irssi> ok
+<GNUtoo-irssi> that permits to have 2 wifi cards...
+<phcoder-1creen> if driver can handle it, sure. When I tried with 2 intel cards, intel drivers and networkmanager got confused.
+<GNUtoo-irssi> (ath9k/ath5k have some difficulties when creating multiples interfaces when WPA is involved)
+<GNUtoo-irssi> ok
+<phcoder-1creen> 3rd minipcie was intended for UWB.
+<GNUtoo-irssi> well, I have multiples cards easily here
+<GNUtoo-irssi> I never had a problem with non-intel cards
+<phcoder-1creen> network manager will still get confused
+<GNUtoo-irssi> example: ath9k + ath9k_htc => both interfaces appear in kde's network manager GUI
+<GNUtoo-irssi> it was getting confused with intel cards and rfkill
+<GNUtoo-irssi> (and I lacked the fimrware of the intel cards...so that added to the confusion)
+<GNUtoo-irssi> Example use case: connect to 2 different AP on 2 different networks
+<phcoder-1creen> yes network manager and multiple cards and rfkill resultsin confusion
+<GNUtoo-irssi> my ath9k_htc is usb
+<GNUtoo-irssi> so no hardware rfkill
+<GNUtoo-irssi> btw, the mini-pcie connectors do export only pci?
+<GNUtoo-irssi> do they export usb, and sata?
+<GNUtoo-irssi> (and some other pins for rfkill, SIM card, and so on)
+
+
+
+
+
+
+
+<GNUtoo-irssi> ok
+<GNUtoo-irssi> well, I must update the instructions
+<GNUtoo-irssi> I was going trough the list of patches I had first
+<GNUtoo-irssi> yes
+<GNUtoo-irssi> but to a specific/personal page
+<fchmmr> could you link me to the updated instructions? (when done)
+<GNUtoo-irssi> well, I'll update them first
+<GNUtoo-irssi> I was going trough my patches list before that
+<GNUtoo-irssi> so I'll do that now
+<fchmmr> So I gather that you basically reset the counter yourself after you boot (after typing grub password)
+<fchmmr> and so, if you boot and the counter is higher, you know if someone tried to use it
+<GNUtoo-irssi> yes, my systemd unit does it
+<GNUtoo-irssi> *resets it
+<GNUtoo-irssi> so it works like that:
+<GNUtoo-irssi> the bootblock switch from normal/ to fallback if the counter is > CONFIG_MAX_REBOOT_CNT
+<GNUtoo-irssi> if no normal/ is there it also switch to fallback/
+<GNUtoo-irssi> and then it increments the counter
+<GNUtoo-irssi> (it's badly explained by me but you get the idea)
+<GNUtoo-irssi> then my systemd units reset the counter to 0 once it's fully booted
+<GNUtoo-irssi> that way if it fails, let's say at booting any linux kernel, then the user won't have bricked the laptop
+<GNUtoo-irssi> (and the developer will have saved lot of time)
+<GNUtoo-irssi> the issue is that I didn't reset the counter at resume
+<GNUtoo-irssi> I should look how
+<GNUtoo-irssi> but at least that makes it developer friendly if the user don't have suspend-resume covered yet
+<GNUtoo-irssi> testing images is then a lot faster
+<GNUtoo-irssi> and for "production", only fallback/ populated, but with the mecanism in place
+<GNUtoo-irssi> that way he can test normal/ easily
+
+
+
+
+