Hi all.
I experimented with K10+ CPUs and boards that doesn't support them, and on some boards it's possible to start new CPUs with BIOS from board on same (or closely relative, like GeForce7025/NForce520 pair) chipset - possible with some bugs, possible without all working fuctions, or even sysnem that hangs on late BIOS initialisation stages - but CPU is successfully initialized. Also there are many enough old AM2 boards, that have AM2+/AM3 CPU support. So incompatibility of new CPUs with old hardware is only on software level (or 'semi-hardware' - when there aren't enough place in flash to fit new K10-related modules and microcodes).
I looked to coreboot because it looks like it can be enough functional replacement of native BIOS. And I want to try to make some experiments with it.
I have some MBs for experiments (Asus M2V-MX, Biostar GeForce7025, Palit NForce520 - that is AM2+/AM3 CPU compatible, MSI K9N4 Ultra MS-7310, and some Biostar on K8T800 - but as I understand this bridge can't be correctly initialized by coreboot). GeForce7025 and NForce520 boards have compatible BIOS - at least, after swapping of flashes they can successfully load MS-DOS from USB flash, and work with PCI/PCI-E videocards - so it looks that they use reference design. Also I have Willem programmer (still without PLCC parallel flash adapter because it was unneeded for me for many years - but I'll make it soon) and POST card, some knowledge in PC hardware and programming, and sometimes have some free time that I can spent for such experiments.
After look at code I have some questions: 1) Coreboot image that is assembled for K10, will support K8 CPUs? And how about K10.5 AthlonII/PhenomII CPUs (generic AM2+ boards can successfully run AM3 CPUs)? 2) To change CPU family - it's enough to replace family in Kconfig and replace included files in romstage.c? 3) Why you don't use generic AMD memory routines and CPUID detection for CPU family at initialization, and possible conditional compiling of code if somebody will need to disable support of K8 or K10+ - for ex., for flash space saving? 4) And what I need for try to create bios for unsupported MB if I take one working as basic? Except modifying Kconfig, replacing DSDT and, of course, replacing MB model name? How can I obtain data for devicetree.cb? I must edit irq_tables.c and mptable.c if I try to adapt BIOS from MB with same chipset? And how about cmos.layout?
it's pretty sure the coreboot support k8...
On Tue, Jun 29, 2010 at 4:26 AM, Andrew nitr0@seti.kr.ua wrote:
Hi all.
I experimented with K10+ CPUs and boards that doesn't support them, and on some boards it's possible to start new CPUs with BIOS from board on same (or closely relative, like GeForce7025/NForce520 pair) chipset - possible with some bugs, possible without all working fuctions, or even sysnem that hangs on late BIOS initialisation stages - but CPU is successfully initialized. Also there are many enough old AM2 boards, that have AM2+/AM3 CPU support. So incompatibility of new CPUs with old hardware is only on software level (or 'semi-hardware' - when there aren't enough place in flash to fit new K10-related modules and microcodes).
I looked to coreboot because it looks like it can be enough functional replacement of native BIOS. And I want to try to make some experiments with it.
I have some MBs for experiments (Asus M2V-MX, Biostar GeForce7025, Palit NForce520 - that is AM2+/AM3 CPU compatible, MSI K9N4 Ultra MS-7310, and some Biostar on K8T800 - but as I understand this bridge can't be correctly initialized by coreboot). GeForce7025 and NForce520 boards have compatible BIOS - at least, after swapping of flashes they can successfully load MS-DOS from USB flash, and work with PCI/PCI-E videocards - so it looks that they use reference design. Also I have Willem programmer (still without PLCC parallel flash adapter because it was unneeded for me for many years - but I'll make it soon) and POST card, some knowledge in PC hardware and programming, and sometimes have some free time that I can spent for such experiments.
After look at code I have some questions:
- Coreboot image that is assembled for K10, will support K8 CPUs? And how
about K10.5 AthlonII/PhenomII CPUs (generic AM2+ boards can successfully run AM3 CPUs)? 2) To change CPU family - it's enough to replace family in Kconfig and replace included files in romstage.c? 3) Why you don't use generic AMD memory routines and CPUID detection for CPU family at initialization, and possible conditional compiling of code if somebody will need to disable support of K8 or K10+ - for ex., for flash space saving? 4) And what I need for try to create bios for unsupported MB if I take one working as basic? Except modifying Kconfig, replacing DSDT and, of course, replacing MB model name? How can I obtain data for devicetree.cb? I must edit irq_tables.c and mptable.c if I try to adapt BIOS from MB with same chipset? And how about cmos.layout?
-- coreboot mailing list: coreboot@coreboot.org http://www.coreboot.org/mailman/listinfo/coreboot