From coreboot
Revision as of 18:52, 9 March 2008 by Nikola (talk | contribs)
Jump to: navigation, search

The wiki is being retired!

Documentation is now handled by the same processes we use for code: Add something to the Documentation/ directory in the coreboot repo, and it will be rendered to Contributions welcome!


Device/functionality Status Comments
CPU works OK Geode GX1, Pentium 1 like, MMX support, no MTRR.
L1 cache enabled OK 16kiB unified cache (12kiB when X11 is running).
L2 cache enabled N/A This CPU does not support L2 cache.
L3 cache enabled N/A
Multiple CPU support N/A
Multi-core support N/A
Hardware virtualization N/A
SDRAM OK Tested with 64MiB and 128MiB modules at 100MHz (CPU core clock / 3).
Dual channel support N/A
ECC support N/A
On-board Hardware
On-board IDE 3.5" OK
On-board IDE 2.5" N/A
On-board SATA N/A
On-board SCSI Unknown
On-board USB OK OK.
On-board VGA OK VGA support in coreboot works fine (e.g. for displaying a boot logo), for console/X11 you need a special kernel console and Xorg driver.
On-board Ethernet OK OK.
On-board Audio OK Tested with a special realtime SMI polling (no regular IRQs from the audio hardware) and Kahlua ALSA driver.
On-board Modem N/A
On-board FireWire N/A
On-board Smartcard reader N/A
On-board CompactFlash OK
On-board PCMCIA N/A
On-board Wifi N/A
On-board Bluetooth N/A
On-board SD card reader N/A
Add-on slots/cards
ISA add-on cards OK Tested with backplane IP-6S.
Audio/Modem-Riser (AMR/CNR) cards N/A
PCI add-on cards OK Tested with backplane IP-6S.
Mini-PCI add-on cards Unknown
Mini-PCI-Express add-on cards Unknown
PCI-X add-on cards Unknown
AGP graphics cards N/A
PCI Express x1 add-on cards N/A
PCI Express x2 add-on cards N/A
PCI Express x4 add-on cards N/A
PCI Express x8 add-on cards N/A
PCI Express x16 add-on cards N/A
PCI Express x32 add-on cards N/A
HTX add-on cards N/A
Legacy / Super I/O
Floppy OK
Serial port 1 (COM1) OK
Serial port 2 (COM2) OK
Parallel port OK
PS/2 keyboard OK
PS/2 mouse OK
Game port N/A
Infrared N/A
PC speaker OK
DiskOnChip N/A
Trackpoint N/A
Touchpad N/A
Fn Hotkeys N/A
Fingerprint Reader N/A
Docking VGA N/A
Docking LAN N/A
Docking USB N/A
Docking Audio N/A
Docking Displayport N/A
Thinklight N/A
Webcam N/A
Sensors / fan control N/A This CPU does not need a fan.
Hardware watchdog OK
SMBus Unknown
CAN bus N/A
CPU frequency scaling OK Frequency scaling on this CPU is useless. Stop clock on HLT saves more power (enabled by Linux as default).
Other powersaving features WIP Hardware supports dozens of such features, but someone must write the software to control them.
Reboot OK Linux supports this chipset to force a hard reset.
Poweroff OK
Suspend Unknown
Nonstandard LEDs N/A
High precision event timers (HPET) N/A
Random number generator (RNG) N/A
Wake on modem ring N/A
Wake on LAN N/A
Wake on keyboard N/A
Wake on mouse N/A
TPM Unknown
Flashrom OK Works fine, both with coreboot and with the proprietary BIOS.


The IEI JUKI-511P mainboard.
The IEI JUKI-511P mainboard.


  • GX1-300B-85-20 Cyrix/National/AMD CPU with 300MHz core clock
  • CS5530A-UCE part of the chipset, Cyrix/National/AMD companion device
  • W83977F-A Super I/O
  • RTL8139C Realtec network controller
  • SST 29F020A PLCC32 256kiB flash memory to boot (in a socket)
  • AD1881A AC97 AD/DA

Building filo

FILO config for IEI JUKI-511P (boot from CF):

# !!! NOTE !!!
# Do NOT add spaces or comments at the end of option lines.
# It confuses some versions of make.
# Use grub instead of autoboot? USE_GRUB = 0
# Image filename for automatic boot and optional command line parameter AUTOBOOT_FILE = "hda1:/boot/bzImage syscrtc=/dev/hda1 initrd=hda1:/boot/image.gz clocksource=pit video=gx1fb:monitor:800x600@60,mode:800x600-8@60,crt:1 ide=nodma ide-delay=2 hdb=none ide1=noprobe"
# Time in second before booting AUTOBOOT_FILE AUTOBOOT_DELAY = 1
# Driver for hard disk, CompactFlash, and CD-ROM on IDE bus IDE_DISK = 1
# Serial console SERIAL_CONSOLE = 1 SERIAL_IOBASE = 0x3f8 # if SERIAL_SPEED is commented out, the speed will not be changed. #SERIAL_SPEED = 115200
# Filesystems FSYS_EXT2FS = 1 # i386 options
# Loader for standard Linux kernel image, a.k.a. /vmlinuz LINUX_LOADER = 1
# Boot FILO from Multiboot loader (eg. GRUB) #MULTIBOOT_IMAGE = 1

Building coreboot

$ cd targets
$ ./buildtarget iei/juki-511p
$ cd iei/juki-511p/juki-511p
$ LANG=C make

The LANG=C is only for those users that uses a localised system.

Using the hardware with a current kernel

The current 2.6.23 kernel does not know the CS5530 interrupt router. So it is impossible to let the kernel itself setup PCI's interrupt routing. Even if you provide the kernel with a valid interrupt routing table (PIRQ). No interrupts will work as the interrupt routing registers are still left at their reset values. The small patch below solves this issue (it was rejected in mainline as it breaks various standard BIOS based Geode systems, as they were shipped with broken PIRQ tables [1]).

Comparing boot time

BIOS Power UP - OS loader OS loader - Linux Linux - shell Summary
Vendor BIOS 11 2 4 17
Coreboot 2 2 4 8