coreboot-kgpe-d16/src/southbridge/amd
Aaron Durbin 9ef9d85976 bootstate: use structure pointers for scheduling callbacks
The GCC 4.9.2 update showed that the boot_state_init_entry
structures were being padded and assumed to be aligned in to an
increased size. The bootstate scheduler for static entries,
boot_state_schedule_static_entries(), was then calculating the
wrong values within the array. To fix this just use a pointer to
the boot_state_init_entry structure that needs to be scheduled.

In addition to the previous issue noted above, the .bs_init
section was sitting in the read only portion of the image while
the fields within it need to be writable. Also, the
boot_state_schedule_static_entries() was using symbol comparison
to terminate a loop which in C can lead the compiler to always
evaluate the loop at least once since the language spec indicates
no 2 symbols can be the same value.

Change-Id: I6dc5331c2979d508dde3cd5c3332903d40d8048b
Signed-off-by: Aaron Durbin <adurbin@chromium.org>
Reviewed-on: http://review.coreboot.org/8699
Tested-by: build bot (Jenkins)
Reviewed-by: Patrick Georgi <pgeorgi@google.com>
2015-03-18 16:41:43 +01:00
..
agesa bootstate: use structure pointers for scheduling callbacks 2015-03-18 16:41:43 +01:00
amd8111 x86: Fix pointer arithmetic regressions from MMIO changes 2015-02-27 18:15:33 +01:00
amd8131 southbridge/amd amd81XX, cs553X & sr5650 spelling fixes 2014-12-17 16:55:44 +01:00
amd8132 southbridge/amd amd81XX, cs553X & sr5650 spelling fixes 2014-12-17 16:55:44 +01:00
amd8151 GPLv2 notice: Unify all files to just use one space in »MA 02110-1301« 2013-03-01 10:16:08 +01:00
cimx bootstate: use structure pointers for scheduling callbacks 2015-03-18 16:41:43 +01:00
cs5535 southbridge: Drop print_ implementation from non-romcc boards 2015-01-06 20:15:20 +01:00
cs5536 x86: Change MMIO addr in readN(addr)/writeN(addr, val) to pointer 2015-02-15 08:50:22 +01:00
pi bootstate: use structure pointers for scheduling callbacks 2015-03-18 16:41:43 +01:00
rs690 southbridge/amd rs690 & rs780 spelling fixes 2014-12-17 17:03:08 +01:00
rs780 southbridge/amd rs690 & rs780 spelling fixes 2014-12-17 17:03:08 +01:00
sb600 amd/sb600: Fix NULL test after use issue 2015-02-25 14:05:42 +01:00
sb700 acpi: Generate valid ACPI processor objects 2015-02-16 21:02:30 +01:00
sb800 acpi: Generate valid ACPI processor objects 2015-02-16 21:02:30 +01:00
sr5650 x86: Change MMIO addr in readN(addr)/writeN(addr, val) to pointer 2015-02-15 08:50:22 +01:00
amd_pci_util.c AMD/agesa: Add functions for AMD PCI IRQ routing 2014-07-02 21:47:28 +02:00
amd_pci_util.h AMD/agesa: Add functions for AMD PCI IRQ routing 2014-07-02 21:47:28 +02:00
Kconfig AMD8131: Remove obsolete directory 2015-02-05 02:17:42 +01:00
Makefile.inc southbridge/amd/pi: Update Kconfig and makefiles for bolton 2015-02-05 17:33:42 +01:00