Commit graph

59 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
216525d1fd - Fix config.g and the hdama config so everthing builds again.
git-svn-id: svn://svn.coreboot.org/coreboot/trunk@1680 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2004-10-16 02:48:37 +00:00
Eric Biederman
119e00e2e1 - Fix fat fingered merge
git-svn-id: svn://svn.coreboot.org/coreboot/trunk@1671 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2004-10-14 22:35:23 +00:00
Ronald G. Minnich
4b93394872 more breakage, thanks to Ron
git-svn-id: svn://svn.coreboot.org/coreboot/trunk@1665 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2004-10-14 21:40:58 +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
Li-Ta Lo
4c5060dc2b move default_resource_map to its own file
git-svn-id: svn://svn.coreboot.org/coreboot/trunk@1623 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2004-07-08 16:59:06 +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
Li-Ta Lo
3bb314725a replace up,across,down with ltd0,ldt1, ldt2
Although it is not used currently, misuse of terminolog is still a misuse.


git-svn-id: svn://svn.coreboot.org/coreboot/trunk@1548 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2004-05-06 21:39:39 +00:00
Li-Ta Lo
52f851dd1d put extern keyword in front of declaration, make the compiler do it job
git-svn-id: svn://svn.coreboot.org/coreboot/trunk@1545 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2004-04-30 23:11:23 +00:00
Li-Ta Lo
5782d273eb check in the current code for IBM/E325, can somebody help to fix it ?
git-svn-id: svn://svn.coreboot.org/coreboot/trunk@1538 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2004-04-26 17:51:20 +00:00
Li-Ta Lo
68a5e08499 make log message a little prettier
git-svn-id: svn://svn.coreboot.org/coreboot/trunk@1479 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2004-03-25 18:04:18 +00:00
Stefan Reinauer
650b6d0b61 Further trimming freebios2 towards code reuse.
Unified AMD K8 reset function that can be customized via mainboard Config.lb


git-svn-id: svn://svn.coreboot.org/coreboot/trunk@1471 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2004-03-24 14:10:45 +00:00
Stefan Reinauer
b01fb94995 small step to clean up mainboard directories. debug.c was basically identical
on all amd64 motherboards, so it moved to the amdk8 specific code.


git-svn-id: svn://svn.coreboot.org/coreboot/trunk@1470 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2004-03-24 12:28:18 +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
a65b14ab50 simpler irq tables
git-svn-id: svn://svn.coreboot.org/coreboot/trunk@1338 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2004-01-21 16:26:44 +00:00
Ronald G. Minnich
0cb44b5cdf make it a manifest constant
git-svn-id: svn://svn.coreboot.org/coreboot/trunk@1310 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2003-12-08 21:29:26 +00:00
Ronald G. Minnich
80b5240c75 fixed irq slot count
git-svn-id: svn://svn.coreboot.org/coreboot/trunk@1309 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2003-12-08 21:06:55 +00:00
Ronald G. Minnich
01e375b401 fixes for epia, attempts to fix arima
git-svn-id: svn://svn.coreboot.org/coreboot/trunk@1259 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2003-11-05 19:55:20 +00:00
Greg Watson
ae83b36415 new option default format
git-svn-id: svn://svn.coreboot.org/coreboot/trunk@1257 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2003-11-05 18:45:51 +00:00
Stefan Reinauer
163309a7e6 infrastructure updates to keep linuxbios building (needed for quartet)
git-svn-id: svn://svn.coreboot.org/coreboot/trunk@1252 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2003-11-04 12:06:03 +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
c817926a6b via epia; also yh lu tyan.
git-svn-id: svn://svn.coreboot.org/coreboot/trunk@1138 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2003-09-26 04:45:52 +00:00
Ronald G. Minnich
6e71aec6cd no default rom size
git-svn-id: svn://svn.coreboot.org/coreboot/trunk@1134 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2003-09-25 17:35:30 +00:00
Eric Biederman
0ac6b41e70 - 1.1.4
Major restructuring of hypertransport handling.
  Major rewerite of superio/NSC/pc87360 as a proof of concept for handling superio resources dynamically
  Updates to hard_reset handling when resetting because of the need to change hypertransport link
    speeds and widths.
    (a) No longer assume the boot is good just because we get to a hard reset point.
    (b) Set a flag to indicate that the BIOS triggered the reset so we don't decrement the
       boot counter.
  Updates to arima/hdama mptable so it tracks the new bus numbers


git-svn-id: svn://svn.coreboot.org/coreboot/trunk@1097 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2003-09-02 17:16:48 +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
Stefan Reinauer
f4440e65a4 more motherboard specific cleanups
git-svn-id: svn://svn.coreboot.org/coreboot/trunk@1089 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2003-08-28 15:08:43 +00:00
Stefan Reinauer
f5f10d1097 cleaning out motherboard specific changes from the generic directories.
Moving tyan resource map to tyan directory. Making IOMMU for hammer choosable
via ENABLE_IOMMU


git-svn-id: svn://svn.coreboot.org/coreboot/trunk@1088 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2003-08-28 13:43:03 +00:00
Ronald G. Minnich
bee6575d7c fixed irq tables for hdama
git-svn-id: svn://svn.coreboot.org/coreboot/trunk@1086 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2003-08-26 13:28:50 +00:00
Ronald G. Minnich
4f1a6975ef fixup. SMP works fine.
git-svn-id: svn://svn.coreboot.org/coreboot/trunk@1078 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2003-08-05 23:31:26 +00:00
Ronald G. Minnich
312f64a2c2 now needed.
git-svn-id: svn://svn.coreboot.org/coreboot/trunk@1070 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2003-08-05 02:24:56 +00:00
Ronald G. Minnich
60e185fcc4 patches from Yh Lu. Tested and working on HDAMA
git-svn-id: svn://svn.coreboot.org/coreboot/trunk@1068 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2003-08-04 22:13:57 +00:00
Ronald G. Minnich
a43048d371 Commits for the new config static device design, to allow more than one static
cpu of a certain type and to eliminate the
cpu p5
cpu p6
cpu k7

nonsense in the old config files.

Next step is to hook into Eric's pci device stuff.


git-svn-id: svn://svn.coreboot.org/coreboot/trunk@1067 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2003-08-04 21:05:19 +00:00
Ronald G. Minnich
feaa75960c Corrections for Config.lb for new tool.
Bump up debugging messages and reduce the size of memory test until that is
running correctly.


git-svn-id: svn://svn.coreboot.org/coreboot/trunk@1035 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2003-07-25 02:55:26 +00:00
Greg Watson
9970bfcb7b new register format
git-svn-id: svn://svn.coreboot.org/coreboot/trunk@1026 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2003-07-24 14:14:01 +00:00
Ronald G. Minnich
4dc7b80151 updated for new code.
git-svn-id: svn://svn.coreboot.org/coreboot/trunk@1003 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2003-07-23 01:41:55 +00:00
Eric Biederman
860ad373ef - First pass at code for generic link width and size determination
git-svn-id: svn://svn.coreboot.org/coreboot/trunk@999 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2003-07-21 23:30:29 +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
Stefan Reinauer
73a9cf4ccb * update quartet target to latest SMP changes.
* remove dead code from coherent_ht.c
* add ldtstop code for link speed changes


git-svn-id: svn://svn.coreboot.org/coreboot/trunk@991 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2003-07-21 13:05:56 +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
Greg Watson
b2e67cdd2c new config format
git-svn-id: svn://svn.coreboot.org/coreboot/trunk@984 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2003-07-18 17:17:52 +00:00
Stefan Reinauer
438a3e423e moved generate_row from coherent_ht.c to board specific auto.c files
due to different routing defaults of different boards.


git-svn-id: svn://svn.coreboot.org/coreboot/trunk@979 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2003-07-17 22:51:30 +00:00
Eric Biederman
b03b33697d - Update Config so we now have the proper number of cpus
- Remove some debugging code from auto.c
- Update coeherent_ht.c so we get the proper broadcast routes.
- Fix the dram probing code.


git-svn-id: svn://svn.coreboot.org/coreboot/trunk@973 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2003-07-17 06:34:30 +00:00
Eric Biederman
2ec0020b3c - Get the correct routing tables entries for the hdama's onboard nics
git-svn-id: svn://svn.coreboot.org/coreboot/trunk@972 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2003-07-17 05:16:46 +00:00
Eric Biederman
4086d16ba2 - Implement an enable method for pci devices.
- Add initial support for the amd8131
- Update the mptable to something possible
- hdama/Config add the amd8131 southbridge


git-svn-id: svn://svn.coreboot.org/coreboot/trunk@968 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2003-07-17 03:26:03 +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
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
a074949981 - Remove bogus memreset parameter from struct mem_controller
git-svn-id: svn://svn.coreboot.org/coreboot/trunk@945 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2003-07-12 01:32:08 +00:00
Eric Biederman
cf008e0ec1 - Add failover.c
git-svn-id: svn://svn.coreboot.org/coreboot/trunk@944 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2003-07-12 01:31:13 +00:00
Eric Biederman
4264415c6e - Update to a working version for the hdama board
git-svn-id: svn://svn.coreboot.org/coreboot/trunk@943 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2003-07-12 01:29:57 +00:00