Here is how I got coreboot working on a Wyse S50:
Prerequisites: - VSA blob for AMD Geode - Coreboot toolchain on Ubuntu VM - TinyCore Linux USB boot stick (for flashing with flashrom)
VSA blob for AMD Geode:
There is a blob available for download on the coreboot sites, but I haven’t tested it. I built my own blob using this method:
I did all my work in VirtualBox VMs, starting with a fresh install of Windows 2000, updated to SP4, plus some newer patches. C drive is NTFS. Then I did the following:
Install unzip: I used this one: http://gnuwin32.sourceforge.net/packages/unzip.ht
Install MASM 6.11: download it from: http://cvrce.blog.com/2009/08/28/masm-v611-free-download/ masm611.zip masm 615.zip
run setup.exe from the disk1 directory NT only MASM.EXE: no Help files: no Sample programs: no Install to C:\MASM611\BIN add to path C:\MASM611\BIN
Patch to MASM 6.14: unpack ML614.EXE to a temporary directory Follow the directions in README.TXT copy patch files to C:\MASM611 - PATCH.EXE - PATCH.RTD - PATCH.RTP run PATCH.EXE from within C:\MASM611 copy H2INC.EXE and H2INC.ERR to C:\MASM611\BIN (overwrite the existing files)
Install VC++ 1.52c: download it from: http://vetusware.com/download/Visual%20C%2B%2B%201.52c/?id=9008 Microsoft - Visual C++ 1.52c - Installation CD.zip unzip the MSVC15 folder to C:\ (you don't need to run setup) create environment variable LIB=C:\MSVC15\LIB add to path C:\MSVC15\BIN
I used an Ubuntu machine to get the source files: git clone http://dev.laptop.org/git/geode-vsa
If you've done everything right, then go in to the source build directory, and run: nmake all
Based on my coreboot mailing list post of January 10, 2014 http://www.coreboot.org/pipermail/coreboot/2014-January/076992.html
Coreboot toolchain on Ubuntu VM:
I did all my work in VirtualBox VMs, starting with a fresh install of Ubuntu 10.04.
Then I did this:
Install sshd: sudo apt-get install openssh-server
Install ncurses sudo apt-get install libncurses5-dev
Install git: sudo apt-get install git-core
Install subversion: sudo apt-get install subversion
Install g++: sudo apt-get install g++
Get buildrom: svn co svn://coreboot.org/buildrom
Get source for geode-vsa: git clone http://dev.laptop.org/git/geode-vsa
Install Coreboot: (yes, but this installs the newest branch - need the one specified in fijam’s blog posting instead: git clone http://review.coreboot.org/p/coreboot cd coreboot git checkout eb84f6a978147fbe543fbe15af254632f215098a git submodule update --init (that last step gets aebd21811dc9c9a171e629150d9d8a239a8b0338) Then optionally get the binary blobs: git clone http://review.coreboot.org/p/blobs.git in there, in the cpu/amd/geode_lx directory is the publically available binary Geode VSA blob. Else can use the one I built.
Assuming the Geode VSA blob has already been built, we are now ready to configure and build Coreboot.
make menuconfig make
(make V=1 to get verbose output)
Based on fijam’s blog posting: http://fijam.eu.org/blog/how-to-put-coreboot-on-wyse-S30s50/
Flashing the ROM using flashrom on TinyCore Linux, USB boot stick, running on stock Wyse S50:
I’m not sure that these notes are 100% correct, but I’ll include them anyway.
Get Tiny Core Linux base system: http://tinycorelinux.net/5.x/x86/release/TinyCore-current.iso
Boot from the CD, choose: “Core with X/GUI (TinyCore) + Installation Extension”
Run the tc-install app, and choose these options to install to a USB stick:
install to sdx (the one that is not the one booted from!) Boot options - 800x600 VGA (and optional foreign language keyboard layout - Norwegian in my case): vga=789 kmap=qwerty/no-latin1 Other: - Choose GUI or CLI only - Installer Application (if need to use for installing) - Remaster Tool (if need to use for making USB boot sticks) - Non-US keyboard layout support
On first boot, might want to change/fix screen resolution: - Control Panel > xvesa
Set keyboard map to norwegian: - Exit X (ctrl-alt-F1) - sudo loadkmap < /usr/share/kmap/qwerty/no-latin1.kmap - Test the new map - Re-enter X (ctrl-alt-F2) - Make the change permanent - edit /mnt/sda1/tce/boot/extlinux/extlinux.conf, append bootcode: kmap=qwerty/no-latin1 (kmap=qwerty/dk-latin1 for Danish)
Installing apps on CLI: http://wiki.tinycorelinux.net/wiki:install_app_commands
Shutdown with backup from CLI: filetool.sh -b exitcheck.sh shutdown
Install OpenSSH: (to get ssh, scp, sshd etc.) tce-load -wi openssh.tcz
Configure sshd (optional): in /usr/local/etc/ssh/ sudo cp sshd_config.example sshd_config sudo /usr/local/etc/init.d/openssh start set tc user's password
Install dev tools: tce-load -wi compiletc.tcz tce-load -wi gcc.tcz tce-load -wi make.tcz tce-load -wi libpci-dev.tcz
Install other tools (optional - not needed for build): tce-load -wi man.tcz tce-load -wi appbrowser-cli.tcz
Install svn: tce-load -wi svn.tcz
Get flashrom source:
svn co svn://flashrom.org/flashrom/trunk flashrom
Build flashrom:
cd flashrom make sudo make install
Based on the guide at http://www.parkytowers.me.uk/thin/wyse/s10/Firmware.shtml
To be used for reading and writing flash module in Wyse S50.
I couldn’t get the built flashrom to be persistent across TinyCore boots, but it is easy enough to just repeat the “Build flashrom” step to get it working again.
Sorry, I have not noted the details of what was configured in make menuconfig, but as I recall, I chose the Wyse platform wish SeaBIOS and set console serial port speed to whatever value I was using on my terminal machine. Important, as there is no working VGA, and I’m not sure that USB is working either (for keyboard). I then booted NanoBSD that I had previously installed on the internal IDE storage, and could ssh into it just fine. Hurrah.
Good luck!
-Jamie
On Sep 22, 2014, at 22:39 , Olliver Schinagl oliver+list@schinagl.nl wrote:
On 04/09/2014 10:29 PM, Jamie Lodberg wrote:
On Apr 8, 2014, at 21:58 , Jamie Lodberg wrote:
On 8. apr. 2014, at 13:40, jamie@toasty.dk wrote:
I then tested again on another S50: Backed up the factory ROM image, flashed my coreboot.rom, then flashed again with the factory ROM image - that box is still working. When I find my PLCC puller, I will try to revive the bricked S50.
A quick status update here - I found my PLCC puller!
My Tiny Core Linux flashrom rig is definitely working - I revived the bricked S50 by flashing a factory image to it.
(Then I bricked it again hehe)
Success!
Haha silly me - I don't think they were bricked at all… as fijam wrote on his blog posting, the power button and LED don't work with coreboot. I had forgotten about this. I connected up a serial cable and saw that it was starting coreboot! Then I watched NanoBSD boot (with NO pcib hangs!!) and was able to ssh into it.
Only problem so far is FreeBSD complaining about an interrupt storm on IRQ 10 when I have the serial port connected. Hm.
Anyway, this is fantastic!!! :D
When you get it all sorted, can you get us enlightened folks some more detailed instructions how to get it all to build :)
Olliver
-Jamie
-- coreboot mailing list: coreboot@coreboot.org http://www.coreboot.org/mailman/listinfo/coreboot