Backpedalling

Another day, another slew of ROM’s. The evolution continues. Today’s is mostly about fixing things in the previous release (01/09/14). So, what’s in this release, I hear you ask?

  1.  I’ve removed the Intel framebuffer driver from Jeltka because Kernel Mode Setting doesn’t play nicely with kexec. Despite being a nice idea, VGA ROM independent Jeltka is therefore off the table.
  2. In addition to the automation and stability recently introduced by the script, having a separate coreboot tree for each base model (currently 12 not including the 2 ChromeOS coreboot trees I’ve kept hanging around after switching to upstream coreboot for Falco and Peppy), and moving to an md5sums file arrangement (simplifying upload and script maintenance), I’ve moved to having a “links” file for Haswell and Sandybridge/Ivybridge based Chromebooks, and using the same graphics id’s (0106 for Sandy/Ivybridge, 0406 for Haswell) across the board. This means there is much reduced chance of PEBKAC and ID-10T from my end resulting in ROM’s which don’t initialise the display (and leaving it to a Linux kernel to do it).
  3. The make process is now even simpler – make clean x 2, make, add choice of 2 links files, add Jeltka, upload.
  4. There will be *NO* Flashrom in Jeltka, as flashing with upstream Flashrom isn’t possible unless you’ve already used an external programmer on your Chromebook’s SPI chip. In lieu of that, I now recommend starting an Arch install to the point where you’ve setup the network, and then change VT’s to download flashrom and a ROM from my site. Similarly this is my recommended method of rescue, as the arch installer/rescue also has useful utils like Testdisk.

49 thoughts on “Backpedalling”

  1. “There will be *NO* Flashrom in Jeltka, as flashing with upstream Flashrom isn’t possible unless you’ve already used an external programmer on your Chromebook’s SPI chip. In lieu of that, I now recommend starting an Arch install to the point where you’ve setup the network, and then change VT’s to download flashrom and a ROM from my site.”

    Does this mean that you can no longer install a Linux distro through Jeltka (as you demonstrate in your YouTube video)?

    Or am I misinterpreting that? (my apologies – but I am _trying_ to learn this stuff.)

    Thank you Mr. Lewis.

    1. It should work OOTB. The TPM is disabled in the firmware, so the tpm modules don’t get loaded by the kernel, and therefore, don’t need to be done anything with. Instead of doing the bind stuff with EHCI you can just blacklist ehci_pci, allegedly, although I haven’t tried it. I haven’t tried Ubuntu on my HP Chromebook 14 (which is pretty much the same as the C720) so I can’t really help you beyond that.

  2. Love Jeltka!!! Upgraded my SSD and it was cake to reinstall the OS without media! Though, and perhaps I thought wrong. The c720 spits out echi-pci resume errors after the pc is woken back up, I thought that was resolved.

    1. Glad you like Jeltka. One half of the population seem to like it a lot more than the other.

      That’s a kernel issue, but I have been told you can blacklist ehci_hcd and ehci_pci to sort it out, instead of using scripts to unbind/rebind. Don’t think it works in Ubuntu unless you rebuild the initramfs though.

  3. ok, now I see my post.

    John sent you a gift.

    I also have an issue getting seeing the USB 2.0 1GB drive that is inserted in the computer… tried all USB ports and lsusb shows it attached. I have tried to format it fat32/fat/ext2 just in case that was the issue… but no joy

    I show with ls -al that I have .bash_history and getnflash_johnlewis_rom.sh on written somewhere. I have the write protect shorted with tinfoil so it should be able to write the bios. Currently sitting at chronos@localhost ~ $ now. I cannot find the old bios for the 1007U processor which is what I have onboard.

    My system is a Parott-Aruana A-E 8667 with 16gb SSD and I want to load Ubuntu 14.04 32bit with Gnome interface.

    I need to backup factory BIOS, reflash new BIOS, and then load Ubuntu. Can you give me a workaround and/or the correct FW and procedure to backup the old bios…. thanks much

    1. Hi Robert,

      I replied to your last post. Perhaps refresh the page. I need to know what appears in /media/removable when the drive is inserted. And, I feel I have to point out that ChromeOS is pretty bad at formatting USB sticks, IMO.

  4. not sure if you got this info: forgive me if you already did

    chronos@localhost ~$ /media/removable
    chronos@localhost /media/removalbe $ ls -al
    total 0
    drwxr-xr-x 2 root root 40 Sept 25 00:14 .
    drwxrwxrwt 4 root root 80 Sept 25 00:14 ..
    chronos@localhost /media/removable $

    I re-tried with another stick and it is still not working. Trying with yet a third stick. Also, tried with no formatting at all and it did not seem to write to it.

    Could I get a link to the firmware and commands to flash manually assuming this chipset and model is pretty successful with this method. Also, i would like to backup the original bios as a failsafe somewhere

    1. You did. There is something odd going on there. Anyway, it will be easier to comment out lines 17 to 22 of the script and run it stand alone i.e. “sudo bash getnflash_johnlewis_rom.sh”. Just make sure you’re in your home directory when you run it, so it will be able to backup the ROM. You’ll then need to upload it to Google Drive or something to keep it safe.

  5. opened vi, thank god that tool is there

    so use a # and appended it to line starting with

    #if [ ! -d /media/removable/* ]; then

    down to and including line

    # fi

    thanks
    Robert

  6. Hey seems that you went offline yesterday… glad to see that you are back online.

    Did you have a chance to review the last post? Does that editing look correct? Could you possibly send that edited .sh script to my email @ ciscoman10@gmail.com. Hate to ask but that may be the most efficient manner for both of us.

    You say run sudo bash getnflash_johnlewis_rom.sh from /home so that it will create a backup there. So I just copy this file to /home and type sudo bash getnflash_johnlewis_rom.sh into the terminal prompt.

    Sorry, I am relatively new to linux but I am going to try to crack this! I want this to function like a normal laptop on say Ubuntu 14.04 .

    1. I think maybe someone is trying to exploit the Shellshock vulnerability on my web server and doing a bit of a DDOS in the process. It’s been giving the “502 bad gateway” error at various points over the last few days. I’ve updated PHP to 5.6 and all associated bits, as there was a minor PHP annoyance message coming up in the logs too. Hopefully, the issue is sorted.

      Yep, that’s what is needed. No need for me to email you an edited version.

      I meant from your “home” directory. Typing “cd” and enter will get you there.

      No worries. If you can manage with Vi you’ll do fine with the rest of Linux. ;)

  7. Think I found the issue.. I had gotten to some other “lower level” CLI not the crosh terminal and was muddling around there. Just got a success on the flash via the crosh terminal. Thanks for your time and may get another gift.

    Side note I was having issues with moving that .sh file around and was searching into permissions/chmod and the like. Ran DF from crosh and saw my usb drive which showed me that it was there. Hopefully, all goes well when I power down, pull the battery and get that foil out of there.

  8. Hi,
    thank you very much for the work you have done, I really appreciate it.
    I installed the rom today on my C720, and for me too suspend isn’t working (on Manjaro).
    How could I diagnose/resolve the issue?

    1. Well, you could tell me exactly what isn’t working about it and any error messages for a start – it’s not very easy to get to the bottom a problem unless you have some details, unless of course you’re a bona fide clairvoyant …

  9. I am sorry, but I wasn’t sure where to start with describing the error. And there seems not to be an error after all.

    When I tried to put the box in suspend earlier, the desktop blacked out for a second and then reappeared, and on shutdown produced a series of ehci-error messages. I had rebooted twice since I installed the firmware.

    But, when I just wanted to reproduce the behaviour it worked.

  10. p.s.: I spoke too soon. When I now tried to power off the machine after I had suspended it earlier, it again gave a spur of error messages (how could I access a log of them once the system is booted again?)

    It then gets stuck showing a progress bar.

    1. Yeah, that’s the ehci errors causing that. Look at the Arch Chromebook wiki – you can either blacklist the ehci modules *or* use a custom suspend/resume script to unbind/rebind the EHCI ports. You’ll find the way yours is working at the moment, that it’ll suspend once, but that’s it.

  11. okay, thanks!
    What are the ehci-modules doing, and how are they different from the modules that don’t need to be blacklisted in the newer versions of your coreboot build?

  12. Sorry, I hadn’t actually followed it, but produced a typo in the grub config edit. I corrected this and it now works.

    Two other questions: is it a function of your firmware build that the laptop boots when the lid is opened, or is this defined somewhere else?
    And, what would you think is an appropriate amont of compensation for the work you have done for this? (I don’t remember the details of the suggestion in the notification shown in the script)

  13. John, all is well I am on Ubuntu 14.04 64bit.. This will be a dedicated XBMC/web portal for my family on the upstairs TV. Again, thank you for all the time and handholding that you give people to get them going.

    To everyone, not excluding myself, donate a some $$ to help John out he has and does devote a lot of time to helping all us save a little money by hacking this platform and retooling it. His time is worth something

    Cheers.

  14. thanks!
    Just one last (perhaps stupid) question: are the files generated in my home directory, specifically the .rom files, required after the firmware is installed, or are they transitional?

    1. The script starts off in your home directory then tries to change to whatever USB stick you have inserted, if in ChromeOS. In linux it just stays at the home directory. The files are left there after downloading, so as well as the backup, you will have the ROM which was flashed and a statically linked Flashrom.

  15. I noticed that since I flashed this version of the firmware and employing the fix for making suspend work, when I use suspend this produces a fifo underrun error like this (from my dmesg):

    [ 4346.824010] [drm:ivybridge_set_fifo_underrun_reporting] *ERROR* uncleared fifo underrun on pipe A
    [ 4346.824083] [drm:ivb_err_int_handler] *ERROR* Pipe A FIFO underrun

    is this a problem?

  16. I blacklisted the ehci modules in grub like so:
    /etc/default/grub

    GRUB_CMDLINE_LINUX_DEFAULT=”modprobe.blacklist=ehci_pci”

    I am running Manjaro with Linux 3.17.

  17. I haven’t implemented this, but I also haven’t experienced any hangs or other problems, except of the appearance of that error message, which also seems to occur somewhat inconsistently (I noticed recently it’s not strictly correlated with using suspend).
    I think I will monitor it a bit further to maybe get some better hints on what’s causing it.

Leave a Reply