This page collects sweeping changes on the tree that might have an impact on boards that weren't tested by the developer, or on uncommitted development. It's sorted by revision (and thus date) and provides a Changelog to anyone who needs to update older trees.

+

This page collects sweeping changes on the tree that might have an impact on boards that weren't tested by the developer, or on uncommitted development. It's sorted by date and provides a Changelog to anyone who needs to update older trees.

−

−

To prevent inaccuracies, changes prior to the creation of this page aren't logged. The head revision at the time of creation of this page was r5151.

−

−

== r5152: Change in PS/2 keyboard API ==

−

−

Applicable if: local changes/additions to Super I/Os.

−

−

The [http://www.coreboot.org/pipermail/coreboot/2010-February/056012.html name and function prototype of the PS/2 keyboard initialization function changed]:

This dismisses the first two arguments (which had to be the constant values 0x60, 0x64 before). This should only have an impact on locally developed Super I/O code that might require to follow this change. The changes required for porting old code are usually of the form:

The ldscripts variable in the buildsystem, which collects the various parts of the linker script used to link coreboot, is [http://www.coreboot.org/pipermail/coreboot/2010-February/056089.html setup generically] now.

−

−

This change must be replicated with local mainboard changes/additions. It should be enough to simply '''remove all ldscripts entries''' from <code>src/mainboard/$(MAINBOARDDIR)/Makefile.inc</code>.

Various rules of object files that exist for every board, or that exist for every board with a given configuration option, are [http://www.coreboot.org/pipermail/coreboot/2010-February/056089.html moved to] <code>src/arch/i386/Makefile.inc</code>.

−

−

If your mainboard uses a custom <code>reset.c</code> file, which provides a <code>hard_reset()</code> function, you must add <code>select BOARD_HAS_HARD_RESET</code> to your board's Kconfig.

−

−

The following change only needs to be replicated with newly created local mainboards. It should be enough to '''remove the following lines''' from <code>src/mainboard/$(MAINBOARDDIR)/Makefile.inc</code>:

−

* initobj-y += crt0.o

−

* obj-y += mainboard.o

−

* obj-$(CONFIG_GENERATE_MP_TABLE) += mptable.o

−

* obj-$(CONFIG_GENERATE_PIRQ_TABLE) += irq_tables.o

−

* obj-$(CONFIG_BOARD_HAS_HARD_RESET) += reset.o

−

−

Also, <code>include some_path/Makefile.romccboard.inc</code> must be dropped, as this file was removed. A statement to set <code>ROMCCFLAGS</code> must be kept.

−

−

If your mainboard's Makefile is empty after these changes, or only contains comments, you can remove it completely.

Various rules of object files that exist for every board, or that exist for every board with a given configuration option, are [http://www.coreboot.org/pipermail/coreboot/2010-February/056154.html moved to] <code>src/arch/i386/Makefile.inc</code>.

−

−

If your mainboard uses a custom <code>fadt.c</code> file, you must add <code>select BOARD_HAS_FADT</code> to your board's Kconfig. Better yet, the FADTs related to that chipset should be consolidated (probably in the southbridge)

The following change only needs to be replicated with newly created local mainboards. It should be enough to '''remove the following lines''' from <code>src/mainboard/$(MAINBOARDDIR)/Makefile.inc</code>:

−

* obj-y += get_bus_conf.o

−

* obj-$(CONFIG_GENERATE_ACPI_TABLES) += dsdt.o

−

* obj-$(CONFIG_GENERATE_ACPI_TABLES) += acpi_tables.o

−

* obj-$(CONFIG_GENERATE_ACPI_TABLES) += fadt.o

−

−

Also, <code>include some_path/Makefile.k8_CAR.inc</code> or <code>include some_path/Makefile.k8_ck804.inc</code> must be dropped, as these files were removed.

−

−

If your mainboard's Makefile is empty after these changes, or only contains comments, you can remove it completely.

ACPI_SSDTX_NUM must be 4 or 5 (the only values found in the tree so far, but this could be extended), and means the highest number in ssdtX.asl in the mainboard tree (numbering starts at 2). ssdt[2..X].asl are automatically pulled in by the build system then.

−

−

To adapt, please check that ACPI_SSDTX_NUM is 4 or 5, then remove the ssdt related rules in the mainboard's Makefile.

−

−

If ACPI_SSDTX_NUM should be some other value, please report to the list, so we can adapt the build system for your case.

−

−

== r5259: Remove config variables related to newconfig ==

−

−

Applicable if: local additions to mainboards (and CPUs in some cases)

−

−

Uses of <code>HAVE_FAILOVER_BOOT</code>, <code>HAVE_FALLBACK_BOOT</code>, <code>USE_FAILOVER_IMAGE</code>, <code>USE_FALLBACK_IMAGE</code> must be removed as they were dropped from the build system and might lead to wrong behaviour.

−

−

To do this, keep the code wrapped in #if statements which evaluate to true, and remove code that the preprocessor would have left out.

CMOS option handling does no longer keep information on where the coreboot checksums are stored twice.

−

−

LB_CKS_RANGE_START, LB_CKS_RANGE_END and LB_CKS_LOC should no longer be defined in Kconfig anymore. build_opt_tbl will do the job automatically.

−

−

In C code, all variants of CONFIG_LB_CKS_* are now called LB_CKS_* again as they're no longer config variables.

−

−

In addition, there is a new requirement for cmos.layout files now: There has to be a checksum description:

−

−

# -----------------------------------------------------------------

−

checksums

−

−

checksum 392 983 984

−

−

== r5341: arch/i386/lib/console.c dropped ==

−

−

Applicable if: local additions

−

−

If your (romstage.c) code included arch/i386/lib/console.c until now, it should include console/console.c instead.

−

−

== r5511: asm.h dropped. ==

−

−

The define ASSEMBLY is now passed by the Makefile for assembler files. The asm.h construct is no longer needed.

−

Just drop asm.h includes from your code. If you use the post_code() macro, you can now include <cpu/x86/post_code.h>

−

−

== r5525: devicetree.cb: APIC rename ==

−

−

Applicable if: local additions to mainboards

−

−

In devicetree.cb rename "apic" to "lapic" and "apic_cluster" to "lapic_cluster".

Revision as of 19:29, 11 April 2014

This page collects sweeping changes on the tree that might have an impact on boards that weren't tested by the developer, or on uncommitted development. It's sorted by date and provides a Changelog to anyone who needs to update older trees.