Commit Graph

56 Commits

Author SHA1 Message Date
Eric Biederman 7003ba4a88 - First stab at running linuxbios without the old static device tree.
Things are close but not quite there yet.


git-svn-id: svn://svn.coreboot.org/coreboot/trunk@1681 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2004-10-16 06:20:29 +00:00
Eric Biederman 3614eebc13 - Update so we no longer require console.inc
git-svn-id: svn://svn.coreboot.org/coreboot/trunk@1670 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2004-10-14 22:29:26 +00:00
Eric Biederman b78c1972fe - First pass through with with device tree enhancement merge. Most of the mechanisms should
be in place but don't expect anything to quite work yet.


git-svn-id: svn://svn.coreboot.org/coreboot/trunk@1662 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2004-10-14 20:54:17 +00:00
Eric Biederman cadfd4c462 - Add arch/cpu.h
git-svn-id: svn://svn.coreboot.org/coreboot/trunk@1661 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2004-10-14 20:52:22 +00:00
Ronald G. Minnich 02fa3b2743 epia-m support
git-svn-id: svn://svn.coreboot.org/coreboot/trunk@1655 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2004-10-06 17:33:54 +00:00
Yinghai Lu e89137b2ad remove_logical_cpus need call get_option
git-svn-id: svn://svn.coreboot.org/coreboot/trunk@1617 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2004-07-01 04:21:49 +00:00
Stefan Reinauer 7fb8916011 make cpuid and mtrr check conditional. They are not there on cpus older than
i586/i686.


git-svn-id: svn://svn.coreboot.org/coreboot/trunk@1613 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2004-06-28 12:06:20 +00:00
Stefan Reinauer 0b607b39ba simplify pirq handling. Only apply consistency fixes on the copied version
of the pirq table.


git-svn-id: svn://svn.coreboot.org/coreboot/trunk@1604 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2004-06-07 10:25:42 +00:00
Eric Biederman d67e76568a - Added volatile to asm statements in auto.c and failover.c
- Updated the romcc version in Config.lb
- Fixed type sizes in romcc_io.h and io.h inl() returning a byte was nasty


git-svn-id: svn://svn.coreboot.org/coreboot/trunk@1583 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2004-05-28 14:18:45 +00:00
Stefan Reinauer 4bfb1f6ce0 cosmetics
git-svn-id: svn://svn.coreboot.org/coreboot/trunk@1577 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2004-05-27 11:09:14 +00:00
Stefan Reinauer 38ffff0d72 move arch/<arch>/config to arch/<arch>/init
git-svn-id: svn://svn.coreboot.org/coreboot/trunk@1571 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2004-05-26 15:43:27 +00:00
Li-Ta Lo 6a8745ae57 code reformat
git-svn-id: svn://svn.coreboot.org/coreboot/trunk@1560 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2004-05-13 20:39:07 +00:00
Li-Ta Lo fd3f2d7945 remove unused l2 cache configure, if we really need it some time in the
furutre, it should be in cpu specific fixup code


git-svn-id: svn://svn.coreboot.org/coreboot/trunk@1554 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2004-05-12 16:34:46 +00:00
Li-Ta Lo 8e79fc3fa8 code reformat
git-svn-id: svn://svn.coreboot.org/coreboot/trunk@1505 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2004-04-15 17:33:21 +00:00
Li-Ta Lo 8cb91dc9f8 speed up ecc clear by enable MTRR/Cache first.
git-svn-id: svn://svn.coreboot.org/coreboot/trunk@1483 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2004-03-26 18:34:48 +00:00
Li-Ta Lo e52666931a Doxidization, reformat
git-svn-id: svn://svn.coreboot.org/coreboot/trunk@1469 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2004-03-23 21:28:05 +00:00
Greg Watson 9f46132e96 tighten up option exporting
git-svn-id: svn://svn.coreboot.org/coreboot/trunk@1468 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2004-03-23 17:41:15 +00:00
Greg Watson 0f62047061 byteorder routines
git-svn-id: svn://svn.coreboot.org/coreboot/trunk@1411 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2004-03-13 03:43:29 +00:00
Eric Biederman 5cd81730ec - Moved hlt() to it's own header.
- Reworked pnp superio device support.  Now complete superio support is less than 100 lines.
- Added support for hard coding resource assignments in Config.lb
- Minor bug fixes to romcc
- Initial support for catching the x86 processor BIST error codes.  I've only seen
  this trigger once in production during a very suspcious reset but...
- added raminit_test to test the code paths in raminit.c for the Opteron
- Removed the IORESOURCE_SET bit and added IORESOURCE_ASSIGNED and IORESOURCE_STORED
  so we can tell what we have really done.
- Added generic AGP/IOMMU setting code to x86
- Added an implementation of memmove and removed reserved identifiers from memcpy
- Added minimal support for booting on pre b3 stepping K8 cores
- Moved the checksum on amd8111 boards because our default location was on top of
  extended RTC registers
- On the Hdama added support for enabling i2c hub so we can get at the temperature
  sensors.  Not that i2c bus was implemented well enough to make that useful.
- Redid the Opteron port so we should only need one reset and most of memory initialization
  is done in cpu_fixup.  This is much, much faster.
- Attempted to make the VGA IO region assigment work.  The code seems to work now...
- Redid the error handling in amdk8/raminit.c to distinguish between a bad value
  and a smbus error, and moved memory clearing out to cpufixup.
- Removed CONFIG_KEYBOARD as it was useless.  See pc87360/superio.c for how to
  setup a legacy keyboard properly.
- Reworked the register values for standard hardware, moving the defintions from
  chip.h into the headers of the initialization routines.  This is much saner
  and is actually implemented.
- Made the hdama port an under clockers BIOS.  I debuged so many interesting problems.
- On amd8111_lpc added setup of architectural/legacy hardware
- Enabled PCI error reporting as much as possible.
- Enhanded build_opt_tbl to generate a header of the cmos option locations so
  that romcc compiled code can query the cmos options.
- In romcc gracefully handle function names that degenerate into function pointers
- Bumped the version to 1.1.6 as we are getting closer to 2.0

  TODO finish optimizing the HT links of non dual boards
  TODO make all Opteron board work again
  TODO convert all superio devices to use the new helpers
  TODO convert the via/epia to freebios2 conventions
  TODO cpu fixup/setup by cpu type


git-svn-id: svn://svn.coreboot.org/coreboot/trunk@1390 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2004-03-11 15:01:31 +00:00
Stefan Reinauer 06feb88cc6 create MADT tables, too.
git-svn-id: svn://svn.coreboot.org/coreboot/trunk@1366 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2004-02-03 16:11:35 +00:00
Stefan Reinauer a7648c2942 acpi fixes:
* move acpi to right position
 * change acpi checksums
 * clean hpet area before creating table
 * calculate hpet checksum


git-svn-id: svn://svn.coreboot.org/coreboot/trunk@1364 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2004-01-29 17:31:34 +00:00
Stefan Reinauer 688b385aec please forgive me... ;)
* initial acpi support code
 * fix header


git-svn-id: svn://svn.coreboot.org/coreboot/trunk@1358 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2004-01-28 16:56:14 +00:00
Stefan Reinauer abf9fea4a0 unify debug messages, fix typo
git-svn-id: svn://svn.coreboot.org/coreboot/trunk@1356 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2004-01-26 10:54:44 +00:00
Stefan Reinauer 36fdcb8e2b Allow using an APIC without mptable.
git-svn-id: svn://svn.coreboot.org/coreboot/trunk@1355 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2004-01-26 10:16:59 +00:00
Stefan Reinauer 40cba39e34 dynamic pirq table fixup
git-svn-id: svn://svn.coreboot.org/coreboot/trunk@1237 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2003-10-28 17:02:10 +00:00
Eric Biederman 83b991afff - O2, enums, and switch statements work in romcc
- Support for compiling romcc on non x86 platforms
  - new romc options -msse and -mmmx for specifying extra registers to use
  - Bug fixes to device the device disable/enable framework and an amd8111 implementation
  - Move the link specification to the chip specification instead of the path
  - Allow specifying devices with internal bridges.
  - Initial via epia support
 - Opteron errata fixes


git-svn-id: svn://svn.coreboot.org/coreboot/trunk@1200 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2003-10-11 06:20:25 +00:00
Ronald G. Minnich 430111b9d1 It builds!
git-svn-id: svn://svn.coreboot.org/coreboot/trunk@1150 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2003-09-26 16:12:23 +00:00
Eric Biederman e9a271e32c - Major update of the dynamic device tree so it can handle
* subtractive resources
  * merging with the static device tree
  * more device types than just pci
- The piece to watch out for is the new enable_resources method that was needed in all of the drivers


git-svn-id: svn://svn.coreboot.org/coreboot/trunk@1096 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2003-09-02 03:36:25 +00:00
Eric Biederman 9bdb460a97 - Updates to config.g so that it works more reliably and has initial support
for paths
- Renamed some configuration variables
  SMP -> CONFIG_SMP
  MAX_CPUS -> CONFIG_MAX_CPUS
  MAX_PHYSICAL_CPUS -> CONFIG_MAX_PHYSICAL_CPUS
- Removed some dead configuration variables
MAX_CPUS -> CONFIG_MAX_CPUS
MAX_PHYSICAL_CPUS -> CONFIG_MAX_PHYSICAL_CPUS
SMP -> CONFIG_SMP
FINAL_MAINBOARD_FIXUP
SIO_BASE
SIO_SYSTEM_CLK_INPUT
NO_KEYBOARD
USE_NORMAL_IMAGE
SERIAL_CONSOLE
USE_ELF_BOOT
ENABLE_FIXED_AND_VARIABLE_MTRRS
START_CPU_SEG
DISABLE_WATCHDOG
ENABLE_IOMMU
AMD8111_DEV

- Removed some assembly files that are no longer needed
killed src/southbridge/amd/amd8111/smbus.inc
killed src/southbrideg/amd/amd8111/cmos_boot_failover.inc
killed src/ram/ramtest.inc
- Updates to config.g so that it works more reliably and has initial support
  for paths
- Renamed some configuration variables
  SMP -> CONFIG_SMP
  MAX_CPUS -> CONFIG_MAX_CPUS
  MAX_PHYSICAL_CPUS -> CONFIG_MAX_PHYSICAL_CPUS
- Removed some dead configuration variables
MAX_CPUS -> CONFIG_MAX_CPUS
MAX_PHYSICAL_CPUS -> CONFIG_MAX_PHYSICAL_CPUS
SMP -> CONFIG_SMP
FINAL_MAINBOARD_FIXUP
SIO_BASE
SIO_SYSTEM_CLK_INPUT
NO_KEYBOARD
USE_NORMAL_IMAGE
SERIAL_CONSOLE
USE_ELF_BOOT
ENABLE_FIXED_AND_VARIABLE_MTRRS
START_CPU_SEG
DISABLE_WATCHDOG
ENABLE_IOMMU
AMD8111_DEV

- Removed some assembly files that are no longer needed
killed src/southbridge/amd/amd8111/smbus.inc
killed src/southbrideg/amd/amd8111/cmos_boot_failover.inc
killed src/ram/ramtest.inc
killed src/sdram/generic_dump_spd.inc
killed src/sdram/generic_dump_spd.inc

- Updated the arima/hdama to build with the new configuration system
- Updated config.g to list all of the variables with make echo


git-svn-id: svn://svn.coreboot.org/coreboot/trunk@1093 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2003-09-01 23:17:58 +00:00
Ronald G. Minnich 57ffeb0578 updates from YhLu, plus fixes for PPC/K8 issues.
git-svn-id: svn://svn.coreboot.org/coreboot/trunk@1059 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2003-07-30 03:05:20 +00:00
Ronald G. Minnich aead5f2582 change it so linuxbios.rom is the final target.
git-svn-id: svn://svn.coreboot.org/coreboot/trunk@1044 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2003-07-25 21:43:12 +00:00
Ronald G. Minnich 138af8aa1d Fix for ROM_SIZE to ROM_SECTION_SIZE
git-svn-id: svn://svn.coreboot.org/coreboot/trunk@1043 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2003-07-25 21:42:02 +00:00
Ronald G. Minnich 35cce551c4 Mods for YhLu to enable calls for mainboard init.
git-svn-id: svn://svn.coreboot.org/coreboot/trunk@1038 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2003-07-25 04:32:42 +00:00
Eric Biederman 2c018fba95 - First pass at s2880 support.
- SMP cleanups (remove SMP only use CONFIG_SMP)
- Minor tweaks to romcc to keep it from taking forever compiling
- failover fixes
- Get a good implementation of k8_cpufixup and sizeram for the opteron


git-svn-id: svn://svn.coreboot.org/coreboot/trunk@998 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2003-07-21 20:13:45 +00:00
Eric Biederman 9b4336cf41 - Major cleanup of the bootpath
- Changes to allow more code to be compiled both ways
- Working SMP support


git-svn-id: svn://svn.coreboot.org/coreboot/trunk@987 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2003-07-19 04:28:22 +00:00
Eric Biederman 91a8ce7d80 - ldscripb.lb remove another $Id: line..
- romcc_io.h Add include guards.
- hdama/Config nothing really but I have been moving the setting back and forth between 1 and 2 cpus
- auto.c Changed the enabled debugging comments.  This almost works with 2 cpus
- coherent_ht.c First pass at getting this right.  It can now find 2 cpus and place them
  in some semblance of a working state.
- raminit.c Fix problems with 4GB of ram. Disable some of the debugging code.


git-svn-id: svn://svn.coreboot.org/coreboot/trunk@965 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2003-07-16 07:04:58 +00:00
Eric Biederman ae948f78e6 - Compile fixes
git-svn-id: svn://svn.coreboot.org/coreboot/trunk@963 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2003-07-14 20:40:38 +00:00
Greg Watson 109959d6b1 new config rules
git-svn-id: svn://svn.coreboot.org/coreboot/trunk@960 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2003-07-14 18:00:10 +00:00
Eric Biederman 655bf44cde - Remove all of the annoying $Id strings
git-svn-id: svn://svn.coreboot.org/coreboot/trunk@956 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2003-07-12 02:15:12 +00:00
Eric Biederman 542fe8056b - Small typo fix in pci_ops.c
git-svn-id: svn://svn.coreboot.org/coreboot/trunk@948 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2003-07-12 01:38:11 +00:00
Eric Biederman b3e9b4a534 - Implement division and rdtsc support for romcc
git-svn-id: svn://svn.coreboot.org/coreboot/trunk@947 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2003-07-12 01:37:33 +00:00
Ronald G. Minnich 1807c37418 Fixes to various config files.
git-svn-id: svn://svn.coreboot.org/coreboot/trunk@908 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2003-06-24 19:44:00 +00:00
Eric Biederman 9dbd460776 - Remove bogus #if CONFIG_SMP test
git-svn-id: svn://svn.coreboot.org/coreboot/trunk@884 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2003-06-19 03:34:54 +00:00
Eric Biederman d3283ec05f - A new test case for romcc
- Minor romcc fixes
- In smbus_wail_until_done a romcc glitch with || in romcc where it likes
  to run out of registers.  Use | to be explicit that I don't need the short
  circuiting behavior.
- Remove unused #defines from coherent_ht.c
- Update the test in auto.c to 512M
- Add definition of log2 to romcc_io.h
- Implement SPD memory sizing in raminit.c
- Reduce the number of memory devices back 2 to for the SOLO board.


git-svn-id: svn://svn.coreboot.org/coreboot/trunk@883 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2003-06-18 11:03:18 +00:00
Ronald G. Minnich 99acb49cf7 added config and other test files.
git-svn-id: svn://svn.coreboot.org/coreboot/trunk@882 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2003-06-17 16:51:06 +00:00
Ronald G. Minnich 667393676b new config file testing the update stuff.
git-svn-id: svn://svn.coreboot.org/coreboot/trunk@881 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2003-06-17 16:48:07 +00:00
Eric Biederman 8d9c123812 - Minor mod to reset16.inc to work with newer binutils hopefully this works with older ones...
- Update apic.h to include the APIC_TASK_PRI register definition
- Update mptable.c to have a reasonable board OEM and productid
- Additional testfiles for romcc.
- Split out auto.c and early failover.c moving their generic bits elsewere
- Enable cache of the rom
- Fixes to amd8111_lpc.c so that we successfully setup virtual wire mode on the ioapic


git-svn-id: svn://svn.coreboot.org/coreboot/trunk@880 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2003-06-17 08:42:17 +00:00
Eric Biederman 7a5416af95 - Modify the freebios tree so the pci config space api is mostly in sync between
code that runs without ram and code that runs with ram.


git-svn-id: svn://svn.coreboot.org/coreboot/trunk@869 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2003-06-12 19:23:51 +00:00
Eric Biederman 540ae01cd3 - Changes to the pci config routines moving them closer to the non romcc API
The goal is to have the same interface with or without romcc.


git-svn-id: svn://svn.coreboot.org/coreboot/trunk@868 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2003-06-12 17:55:54 +00:00
Eric Biederman 05f26fcb57 - Factoring of auto.c
- Implementation of fallback/normal support for the amd solo board
- Minor bugfix in romcc


git-svn-id: svn://svn.coreboot.org/coreboot/trunk@867 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2003-06-11 21:55:00 +00:00