# # GRUB configuration file which sits inside the root CBFS (coreboot filesystem) # # 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 # the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License # along with this program. If not, see . # # Serial and keyboard configuration, very important. serial --speed=115200 --unit=0 --word=8 --parity=no --stop=1 terminal_input --append serial terminal_output --append serial terminal_input --append at_keyboard #add keyboard support. set default="0" set timeout=1 set pager=1 keymap ukqwerty background_image (cbfsdisk)/background.png loadfont (cbfsdisk)/dejavusansmono.pf2 menuentry 'Load Operating System' { linux (ahci0,1)/vmlinuz root=/dev/sda1 initrd (ahci0,1)/initrd.img } menuentry 'Parse ISOLINUX menu (USB)' { set root='usb0' syslinux_configfile -i (usb0)/isolinux/isolinux.cfg } menuentry 'Parse ISOLINUX menu (CD)' { set root='ata0' syslinux_configfile -i (ata0)/isolinux/isolinux.cfg } menuentry 'Load MemTest86+ (serial port, baud 115200)' { set root='cbfsdisk' chainloader /memtest } menuentry 'Search for GRUB configuration on internal storage' { insmod regexp insmod ahci insmod part_msdos for x in (ahci0,*) ; do if [ -f "$x/grub/grub.cfg" ] ; then submenu "Load Config from $x" $x { root=$2 source /grub/grub.cfg unset superusers } fi if [ -f "$x/boot/grub/grub.cfg" ] ; then submenu "Load Config from $x" $x { root=$2 source /boot/grub/grub.cfg unset superusers } fi done }