Commit Graph

87 Commits

Author SHA1 Message Date
Uwe Hermann 754edf712c Remove duplicated code which is already in libpayload (trivial).
Build-tested against the latest libpayload.

Signed-off-by: Uwe Hermann <uwe@hermann-uwe.de>
Acked-by: Uwe Hermann <uwe@hermann-uwe.de>



git-svn-id: svn://svn.coreboot.org/coreboot/trunk@3471 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2008-08-04 21:02:07 +00:00
Uwe Hermann 83233d0a15 Add missing #include.
Signed-off-by: Uwe Hermann <uwe@hermann-uwe.de>
Acked-by: Uwe Hermann <uwe@hermann-uwe.de>



git-svn-id: svn://svn.coreboot.org/coreboot/trunk@3470 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2008-08-04 21:00:49 +00:00
Uwe Hermann 941aaee885 Random coding style fixes and simplifications (trivial).
This will even reduce the final payload size a bit.

Signed-off-by: Uwe Hermann <uwe@hermann-uwe.de>
Acked-by: Uwe Hermann <uwe@hermann-uwe.de>



git-svn-id: svn://svn.coreboot.org/coreboot/trunk@3427 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2008-07-18 14:08:18 +00:00
Uwe Hermann 2fbbb29e54 Add a coreinfo module which can hexdump arbitrary RAM regions and
allows you to scroll through the RAM contents.

Signed-off-by: Uwe Hermann <uwe@hermann-uwe.de>
Acked-by: Peter Stuge <peter@stuge.se>



git-svn-id: svn://svn.coreboot.org/coreboot/trunk@3419 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2008-07-08 16:18:38 +00:00
Jordan Crouse 7600c48bf4 coreinfo: Enable serial support
Remove the lines preventing serial + curses thanks to r3370. Trivial.

Signed-off-by: Jordan Crouse <jordan.crouse@amd.com>
Acked-by: Jordan Crouse <jordan.crouse@amd.com>



git-svn-id: svn://svn.coreboot.org/coreboot/trunk@3371 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2008-06-20 00:02:52 +00:00
Jordan Crouse 3b4706591c libpayload: Support curses for serial
Support the curses interface over serial by supporting a minimal vt100
terminal.

Signed-off-by: Jordan Crouse <jordan.crouse@amd.com>
Acked-by: Ronald G. Minnich <rminnich@gmail.com>


git-svn-id: svn://svn.coreboot.org/coreboot/trunk@3370 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2008-06-20 00:01:42 +00:00
Jordan Crouse 5083811458 coreinfo: Specify a name, listname and desc item for coreinfo
These values are consumed by the chooser payload.  listname is 
presented on the chooser menu.

Signed-off-by: Jordan Crouse <jordan.crouse@amd.com>
Acked-by: Peter Stuge <peter@stuge.se>


git-svn-id: svn://svn.coreboot.org/coreboot/trunk@3355 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2008-05-27 20:07:47 +00:00
Jordan Crouse fc697ad028 libpayload: Add PAYLOAD_INFO macro
Adds the PAYLOAD_INFO macro to store payload information in a data
section in the ELF which can be consumed by other entities.

Signed-off-by: Jordan Crouse <jordan.crouse@amd.com>
Acked-by: Peter Stuge <peter@stuge.se>


git-svn-id: svn://svn.coreboot.org/coreboot/trunk@3354 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2008-05-27 20:06:54 +00:00
Jordan Crouse 9e734c29cf libpayload: Add a function to verify the checksum on a LAR file
This function verifies the checksum on a LAR file.

Signed-off-by: Jordan Crouse <jordan.crouse@amd.com>
Acked-by: Peter Stuge <peter@stuge.se>


git-svn-id: svn://svn.coreboot.org/coreboot/trunk@3352 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2008-05-27 19:57:53 +00:00
Uwe Hermann 29413c76ab Add KEY_ESC (trivial).
Signed-off-by: Uwe Hermann <uwe@hermann-uwe.de>
Acked-by: Uwe Hermann <uwe@hermann-uwe.de>



git-svn-id: svn://svn.coreboot.org/coreboot/trunk@3342 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2008-05-21 13:49:03 +00:00
Jordan Crouse 98cc0566ca coreinfo: Use the ESC key to exit the payload
Enable the ESC key to close coreinfo - useful if you are using a chooser
and want to return to it.

Signed-off-by: Jordan Crouse <jordan.crouse@amd.com>
Acked-by: Myles Watson <mylesgw@gmail.com>


git-svn-id: svn://svn.coreboot.org/coreboot/trunk@3340 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2008-05-20 20:16:34 +00:00
Jordan Crouse 9b1c7c1645 coreinfo: Fix the subwindow refresh based on the libpayload changes
Changes to libpayload to fix subwindows broke coreinfo.  This fixes it,
and improves performance by eliminating the entire screen refresh every
second.

Signed-off-by: Jordan Crouse <jordan.crouse@amd.com>
Acked-by: Myles Watson <mylesgw@gmail.com>


git-svn-id: svn://svn.coreboot.org/coreboot/trunk@3339 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2008-05-20 20:16:03 +00:00
Jordan Crouse 9dac1b4cca libpayload: Add an exec() and i386_do_exec() function
Add functions for libpayload to execute other payloads in memory,
and have those functions return cleanly.

Signed-off-by: Jordan Crouse <jordan.crouse@amd.com>
Acked-by: Uwe Hermann <uwe@hermann-uwe.de>


git-svn-id: svn://svn.coreboot.org/coreboot/trunk@3338 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2008-05-20 20:10:49 +00:00
Jordan Crouse 506980808d libpayload: Add larfptr function
Add a function to get a pointer to the start of a LAR entry.

Signed-off-by: Jordan Crouse <jordan.crouse@amd.com>
Acked-by: Myles Watson <mylesgw@gmail.com>


git-svn-id: svn://svn.coreboot.org/coreboot/trunk@3337 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2008-05-20 20:09:42 +00:00
Jordan Crouse d43841defc libpayload: Fix curses subwindows
This fixes subwindows in curses so that they draw and refresh correctly.

Signed-off-by: Jordan Crouse <jordan.crouse@amd.com>
Acked-by: Myles Watson <mylesgw@gmail.com>


git-svn-id: svn://svn.coreboot.org/coreboot/trunk@3336 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2008-05-20 20:08:11 +00:00
Jordan Crouse 621c09563b libpayload: implement wborder function
Implement the wborder function for curses to draw a box around a window.

Signed-off-by: Jordan Crouse <jordan.crouse@amd.com>
Acked-by: Myles Watson <mylesgw@gmail.com>


git-svn-id: svn://svn.coreboot.org/coreboot/trunk@3317 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2008-05-14 20:10:02 +00:00
Jordan Crouse 3148935557 libpayload: Fix the putc function
Reverse rows and columns on the video putc() function, and watch printf 
work again.

Signed-off-by: Jordan Crouse <jordan.crouse@amd.com>
Acked-by: Myles Watson <mylesgw@gmail.com>



git-svn-id: svn://svn.coreboot.org/coreboot/trunk@3316 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2008-05-14 20:07:31 +00:00
Myles Watson 56cc34a9a7 This is a trivial patch which fixes the tint build by removing the extra
typedef for time_t.  The other half bumps the tint patch revision in buildrom
to take advantage of it.

Signed-off-by: Myles Watson <mylesgw@gmail.com>
Acked-by: Myles Watson <mylesgw@gmail.com>




git-svn-id: svn://svn.coreboot.org/coreboot/trunk@3303 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2008-05-13 21:29:48 +00:00
Uwe Hermann d0e687ac39 Fix the build when serial console support is disabled (trivial).
Signed-off-by: Uwe Hermann <uwe@hermann-uwe.de>
Acked-by: Uwe Hermann <uwe@hermann-uwe.de>



git-svn-id: svn://svn.coreboot.org/coreboot/trunk@3298 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2008-05-11 16:13:24 +00:00
Uwe Hermann 134aaaec50 Quickfix to repair 'make clean; make menuconfig' (trivial).
Signed-off-by: Uwe Hermann <uwe@hermann-uwe.de>
Acked-by: Uwe Hermann <uwe@hermann-uwe.de>



git-svn-id: svn://svn.coreboot.org/coreboot/trunk@3297 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2008-05-11 15:51:31 +00:00
Jordan Crouse aa6e378c4e coreinfo: Add a module for browsing the boot LAR
Signed-off-by: Jordan Crouse <jordan.crouse@amd.com>
Acked-by: Peter Stuge <peter@stuge.se>


git-svn-id: svn://svn.coreboot.org/coreboot/trunk@3289 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2008-05-07 20:43:15 +00:00
Jordan Crouse 681ec27e2c libpayload: Add LAR walking support
Add suport for walking LARs.  These try to emulate the f*
functions from POSIX, though they are obviously different
in their behavior.

Signed-off-by: Jordan Crouse <jordan.crouse@amd.com>
Acked-by: Myles Watson <mylesgw@gmail.com>


git-svn-id: svn://svn.coreboot.org/coreboot/trunk@3288 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2008-05-07 20:34:02 +00:00
Jordan Crouse 193378698e coreinfo: Show the current time and date in the menu
Signed-off-by: Jordan Crouse <jordan.crouse@amd.com>
Acked-by: Peter Stuge <peter@stuge.se>


git-svn-id: svn://svn.coreboot.org/coreboot/trunk@3286 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2008-05-06 22:15:31 +00:00
Jordan Crouse de7fc55920 We were in the risk of running out of space in the option menu at
the bottom of the screen - this turns the function keys into
categories and then list specific items as part of the category.

Signed-off-by: Jordan Crouse <jordan.crouse@amd.com>
Acked-by: Myles Watson <mylesgw@gmail.com>



git-svn-id: svn://svn.coreboot.org/coreboot/trunk@3285 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2008-05-06 22:03:16 +00:00
Jordan Crouse 7ce2666249 The previous commit had more in it then I wanted - so I am reverting
this and re-commiting so that the history and comments are correct.

Signed-off-by: Jordan Crouse <jordan.crouse@amd.com>
Acked-by: Jordan Crouse <jordan.crouse@amd.com>



git-svn-id: svn://svn.coreboot.org/coreboot/trunk@3284 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2008-05-06 22:00:55 +00:00
Jordan Crouse 646ee3eae9 coreinfo: Move the rdtsc.h include into the #ifdef CONFIG_MODULE_CPUINFO
rdtsc.h shouldn't be included unless we really need it (and use it).
Trivial.

Signed-off-by: Jordan Crouse <jordan.crouse@amd.com>
Acked-by: Jordan Crouse <jordan.crouse@amd.com>


git-svn-id: svn://svn.coreboot.org/coreboot/trunk@3283 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2008-05-06 21:32:52 +00:00
Jordan Crouse e2271430c5 libpayload: Add gettimeofday() and friends
Add a gettimeofday() implementation - it works pretty well, but it
drifts a little bit so its not very suitable for keeping time.  It
works best to track changes in time over small periods of time.

Signed-off-by: Jordan Crouse <jordan.crouse@amd.com>
Acked-by: Uwe Hermann <uwe@hermann-uwe.de>


git-svn-id: svn://svn.coreboot.org/coreboot/trunk@3272 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2008-04-25 23:11:02 +00:00
Jordan Crouse d772e1e7fe libpayload: Fix a small but aggressive bug in printf()
This was causing the returned counter value to be one more then it
should be when printing a single character.

Signed-off-by: Jordan Crouse <jordan.crouse@amd.com>
Acked-by: Ward Vandewege <ward@gnu.org>


git-svn-id: svn://svn.coreboot.org/coreboot/trunk@3271 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2008-04-25 23:10:23 +00:00
Jordan Crouse 63f181f97c libpayload: Enable keyboard translation so that we can use scancode set 1
The qemu keyboard controller defaults to using scancode set 2, we use set 1.
Turn on the translate mode in the keyboard controller to force the issue.

Signed-off-by: Jordan Crouse <jordan.crouse@amd.com>
Acked-by: Peter Stuge <peter@stuge.se>


git-svn-id: svn://svn.coreboot.org/coreboot/trunk@3270 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2008-04-25 23:09:39 +00:00
Jordan Crouse 24a0404759 libpayload: Fix malloc allocation
Apparently the previous version worked on luck.  Fix the allocation
and add parens to better guide the compiler.  Also, halt() if 
the heap is poisoned (like by an overrun).  Finally, fix calloc()
so that it actually works.

Signed-off-by: Jordan Crouse <jordan.crouse@amd.com>
Acked-by: Peter Stuge <peter@stuge.se>



git-svn-id: svn://svn.coreboot.org/coreboot/trunk@3269 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2008-04-25 23:08:47 +00:00
Jordan Crouse c781584936 libpayload: Add the null terminator to the end of the duplicated string
Signed-off-by: Jordan Crouse <jordan.crouse@amd.com>
Acked-by: Myles Watson <mylesgw@gmail.com>


git-svn-id: svn://svn.coreboot.org/coreboot/trunk@3268 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2008-04-25 23:07:39 +00:00
Uwe Hermann 0ab8cddf02 Add support for a 'bootlog' module to coreinfo.
It displays the coreboot printk buffer in RAM and let's you scroll through it.
This feature is only available for coreboot v3 though, as v2 doesn't have a
printk-buffer feature, yet.

Signed-off-by: Uwe Hermann <uwe@hermann-uwe.de>
Acked-by: Jordan Crouse <jordan.crouse@amd.com>



git-svn-id: svn://svn.coreboot.org/coreboot/trunk@3247 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2008-04-22 20:19:53 +00:00
Uwe Hermann 16acf8b393 Show index numbers in the NVRAM dump, similar to the PCI config space dump.
Signed-off-by: Uwe Hermann <uwe@hermann-uwe.de>
Acked-by: Jordan Crouse <jordan.crouse@amd.com>



git-svn-id: svn://svn.coreboot.org/coreboot/trunk@3246 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2008-04-22 16:56:21 +00:00
Jordan Crouse 5f4410b7dd libpayload: Fix keyboard buglet
This solves the multiple keystroke issue that popped up recently.

Signed-off-by: Jordan Crouse <jordan.crouse@amd.com>
Acked-by: Uwe Hermann <uwe@hermann-uwe.de>


git-svn-id: svn://svn.coreboot.org/coreboot/trunk@3245 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2008-04-21 22:33:58 +00:00
Uwe Hermann 0b53ec3da9 Move curses/speaker.c to drivers/ as it's not curses-specific (trivial).
Signed-off-by: Uwe Hermann <uwe@hermann-uwe.de>
Acked-by: Uwe Hermann <uwe@hermann-uwe.de>



git-svn-id: svn://svn.coreboot.org/coreboot/trunk@3240 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2008-04-15 17:24:08 +00:00
Uwe Hermann 53693031c5 Add the patch for building tint as payload, as well as a small README,
into the payloads/external/tint directory.

Signed-off-by: Uwe Hermann <uwe@hermann-uwe.de>
Acked-by: Jordan Crouse <jordan.crouse@amd.com>



git-svn-id: svn://svn.coreboot.org/coreboot/trunk@3239 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2008-04-15 16:47:20 +00:00
Ulf Jordan 50eff2147d Correct upper boundary for isxdigit.
Signed-off-by: Ulf Jordan <jordan@chalmers.se>
Acked-by: Uwe Hermann <uwe@hermann-uwe.de>



git-svn-id: svn://svn.coreboot.org/coreboot/trunk@3238 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2008-04-12 20:09:46 +00:00
Uwe Hermann be504d1d8d Drop unneeded #includes, add EXIT_SUCCESS/EXIT_FAILURE (trivial).
Signed-off-by: Uwe Hermann <uwe@hermann-uwe.de>
Acked-by: Uwe Hermann <uwe@hermann-uwe.de>



git-svn-id: svn://svn.coreboot.org/coreboot/trunk@3237 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2008-04-11 20:16:24 +00:00
Uwe Hermann 72199bc49a Rewrite and filling of libc/ctype.c (thus adjusting copyright line).
Use a simple one-liner for each of the functions. You can surely optimize
the code some more, but I chose not to do that in order to keep it readable.
When compiling with -Os the size differences are minimal.

Signed-off-by: Uwe Hermann <uwe@hermann-uwe.de>
Acked-by: Jordan Crouse <jordan.crouse@amd.com>



git-svn-id: svn://svn.coreboot.org/coreboot/trunk@3236 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2008-04-11 19:43:55 +00:00
Uwe Hermann b103345a14 Convert BIN2HEX/HEX2BIN to functions and add the abs() family
of functions while we're at it.

hex2bin() now also supports upper-case input characters.

Signed-off-by: Uwe Hermann <uwe@hermann-uwe.de>
Acked-by: Jordan Crouse <jordan.crouse@amd.com>



git-svn-id: svn://svn.coreboot.org/coreboot/trunk@3235 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2008-04-11 18:38:04 +00:00
Uwe Hermann fad8c2bd7c Various small consistency fixes (trivial):
- Use _FOO_H include guard format everywhere.

 - Add missing speaker.c prototypes to libpayload.h.

 - Consistently use short form u8/u16/u32 instead of uint8_t et. al.

 - kcofig: Use 'depends on' instead of 'depends', which seems deprecated.

Signed-off-by: Uwe Hermann <uwe@hermann-uwe.de>
Acked-by: Uwe Hermann <uwe@hermann-uwe.de>



git-svn-id: svn://svn.coreboot.org/coreboot/trunk@3234 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2008-04-11 18:01:50 +00:00
Jordan Crouse 54315533cc libpayload: Add a Geode video driver
Add a Geode video driver in lieu of VGA on Geode LX devices

Signed-off-by: Jordan Crouse <jordan.crouse@amd.com>
Acked-by: Uwe Hermann <uwe@hermann-uwe.de>



git-svn-id: svn://svn.coreboot.org/coreboot/trunk@3233 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2008-04-11 15:48:21 +00:00
Jordan Crouse 234e87f137 libpayload: Support functions for Geode
The Geode video driver will require a number of support functions,
including udelay(), PCI bus walking and MSRs.  This adds those functions
in preparation for the actual code.

Signed-off-by: Jordan Crouse <jordan.crouse@amd.com>
Acked-by: Uwe Hermann <uwe@hermann-uwe.de>


git-svn-id: svn://svn.coreboot.org/coreboot/trunk@3231 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2008-04-10 22:50:44 +00:00
Jordan Crouse 30939bdffd libpayload: Add video console framework
Add a framework for multiple video console drivers.  This is to prepare
for the Geode driver.

Signed-off-by: Jordan Crouse <jordan.crouse@amd.com>
Acked-by: Uwe Hermann <uwe@hermann-uwe.de>



git-svn-id: svn://svn.coreboot.org/coreboot/trunk@3230 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2008-04-10 22:49:02 +00:00
Jordan Crouse bac89d088c libpayload: Avoid .svn files in the header install
Slight tweak to to the install target to avoid copying .svn
files.  Trivial self ack.

Signed-off-by: Jordan Crouse <jordan.crouse@amd.com>
Acked-by: Jordan Crouse <jordan.crouse@amd.com>



git-svn-id: svn://svn.coreboot.org/coreboot/trunk@3229 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2008-04-10 17:57:42 +00:00
Jordan Crouse 1cb92bc77f coreinfo: Make coreinfo use the gcc-wrappers from libpayload
Signed-off-by: Jordan Crouse <jordan.crouse@amd.com>
Acked-by: Uwe Hermann <uwe@hermann-uwe.de>


git-svn-id: svn://svn.coreboot.org/coreboot/trunk@3228 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2008-04-10 00:05:41 +00:00
Uwe Hermann 804f4df5bd Make the sample Makefile a bit more generic, so it can be adapted more
easily for other payloads. Also, add a 'distclean' target (trivial).

Signed-off-by: Uwe Hermann <uwe@hermann-uwe.de>
Acked-by: Uwe Hermann <uwe@hermann-uwe.de>



git-svn-id: svn://svn.coreboot.org/coreboot/trunk@3227 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2008-04-09 23:48:48 +00:00
Jordan Crouse c3e728fbdf libpayload: Implement gcc wrappers for libpayload
libpayload uses a ton of flags and other scary gcc and ld options.  These
wrappers hide most of that from the user, so that using libpayload is as
easy as lpgcc -o hello hello.c

Signed-off-by: Jordan Crouse <jordan.crouse@amd.com>
Acked-by: Uwe Hermann <uwe@hermann-uwe.de>



git-svn-id: svn://svn.coreboot.org/coreboot/trunk@3226 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2008-04-09 23:05:59 +00:00
Uwe Hermann c5a78ac56a Add missing prototypes for libc/rand.c functions (trivial).
Signed-off-by: Uwe Hermann <uwe@hermann-uwe.de>
Acked-by: Uwe Hermann <uwe@hermann-uwe.de>



git-svn-id: svn://svn.coreboot.org/coreboot/trunk@3225 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2008-04-08 23:38:15 +00:00
Uwe Hermann ea72559d5d Small curses fixes/additions for libpayload (trivial).
- Properly set LINES and COLS, needed for a real curses application.

 - Implement notimeout() and wtimeout(), which are trivial.

 - Implement a dummy flushinp() for now as it's needed by a curses
   application I'm porting, will be replaced by something useful later.

Signed-off-by: Uwe Hermann <uwe@hermann-uwe.de>
Acked-by: Uwe Hermann <uwe@hermann-uwe.de>



git-svn-id: svn://svn.coreboot.org/coreboot/trunk@3224 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2008-04-08 23:30:22 +00:00