the following patch was just integrated into master:
commit 0fcd6f912ba53ef1fc6327143c07727a556a718a
Author: Aaron Durbin <adurbin(a)chromium.org>
Date: Tue Mar 8 11:23:52 2016 -0600
drivers/intel/fsp2_0: remove struct resource usage
There's no need to use a struct resource type for
fsp_find_reserved_memory(). struct resource is mainly associated
with a device and that memory is added to cbmem after memory init.
Other uses ins FSP 2.0 just use struct range_entry. Use that
instead for consistency.
Change-Id: Id7d39da1c2e23f97cdaafd7f5d281cefa6fee543
Signed-off-by: Aaron Durbin <adurbin(a)chromium.org>
Reviewed-on: https://review.coreboot.org/13960
Tested-by: build bot (Jenkins)
Reviewed-by: Andrey Petrov <andrey.petrov(a)intel.com>
See https://review.coreboot.org/13960 for details.
-gerrit
the following patch was just integrated into master:
commit 9b28f0023cc6bf71d500132f8cdf5b0a7193a580
Author: Aaron Durbin <adurbin(a)chromium.org>
Date: Tue Mar 8 11:20:53 2016 -0600
drivers/intel/fsp2_0: add TODOs to fix deficiencies
The FSP 2.0 implementation doesn't handle FSP modules for
SoCs that are required to be XIP. There is no notion of
"loading" in that situation where one should be copying
anything anywhere.
Additionally, the loading code does not handle overlaps within
the current running program which is doing the loading.
Change-Id: Ide145581f1dd84efb73a28ae51b3313183fa127a
Signed-off-by: Aaron Durbin <adurbin(a)chromium.org>
Reviewed-on: https://review.coreboot.org/13959
Tested-by: build bot (Jenkins)
Reviewed-by: Martin Roth <martinroth(a)google.com>
Reviewed-by: Andrey Petrov <andrey.petrov(a)intel.com>
See https://review.coreboot.org/13959 for details.
-gerrit
the following patch was just integrated into master:
commit 40672becaa44a0d71f6a312335cc4c028d60199b
Author: Aaron Durbin <adurbin(a)chromium.org>
Date: Tue Mar 8 11:01:17 2016 -0600
drivers/intel/fsp2_0: don't leak resources
rdev_mmap() was not followed by rdev_munmap(), thus leaking
resources. Fix the leak.
Change-Id: Ibdd30d6b64616038013b4bb748f2ad4a98db5472
Signed-off-by: Aaron Durbin <adurbin(a)chromium.org>
Reviewed-on: https://review.coreboot.org/13958
Reviewed-by: Furquan Shaikh <furquan(a)google.com>
Tested-by: build bot (Jenkins)
Reviewed-by: Andrey Petrov <andrey.petrov(a)intel.com>
See https://review.coreboot.org/13958 for details.
-gerrit
the following patch was just integrated into master:
commit ac1c9ece23f9b0c7cdba3de68614a1081a3016b3
Author: Aaron Durbin <adurbin(a)chromium.org>
Date: Tue Mar 8 10:59:46 2016 -0600
soc/intel/apollolake: correct comment to reference top of CAR
The memory provided to MemoryInit() for its own usage is at the
top of the CAR region.
Change-Id: I8685b5ab138182e24123b14cac6f7b32e5e784d2
Signed-off-by: Aaron Durbin <adurbin(a)chromium.org>
Reviewed-on: https://review.coreboot.org/13957
Reviewed-by: Furquan Shaikh <furquan(a)google.com>
Tested-by: build bot (Jenkins)
Reviewed-by: Andrey Petrov <andrey.petrov(a)intel.com>
See https://review.coreboot.org/13957 for details.
-gerrit
the following patch was just integrated into master:
commit e8845922092849c438685ee3ea580ad63537c6c7
Author: Aaron Durbin <adurbin(a)chromium.org>
Date: Tue Mar 8 10:47:18 2016 -0600
lib/memrange: add function to initialize range_entry
In order to enforce the semantics of struct range_entry provide
an init function, range_entry_init(), which performs the field
initialization to adhere to the internal struture's assumptions.
Change-Id: I24b9296e5bcf4775974c9a8d6326717608190215
Signed-off-by: Aaron Durbin <adurbin(a)chromium.org>
Reviewed-on: https://review.coreboot.org/13956
Reviewed-by: Furquan Shaikh <furquan(a)google.com>
Tested-by: build bot (Jenkins)
Reviewed-by: Andrey Petrov <andrey.petrov(a)intel.com>
See https://review.coreboot.org/13956 for details.
-gerrit
Iru Cai (mytbk920423(a)gmail.com) just uploaded a new patch set to gerrit, which you can find at https://review.coreboot.org/14008
-gerrit
commit 19a212b110c823aaa02de10adc296e40b3d1ae9f
Author: Iru Cai <mytbk920423(a)gmail.com>
Date: Wed Mar 9 23:22:58 2016 +0800
arch/x86/smbios: fix length calculation for SMBIOS type 17
Different DIMM modules give different SMBIOS type 17 lengths, so we
can't use `meminfo->dimm_cnt*len' for entry struct size, otherwise
it'll give a wrong SMBIOS size when two or more different DIMMs are
installed on the machine.
Change-Id: I0e33853f6aa4b30da547eb433839a397d451a8cf
Signed-off-by: Iru Cai <mytbk920423(a)gmail.com>
---
src/arch/x86/smbios.c | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/src/arch/x86/smbios.c b/src/arch/x86/smbios.c
index 8c87635..f380057 100644
--- a/src/arch/x86/smbios.c
+++ b/src/arch/x86/smbios.c
@@ -473,6 +473,7 @@ static int smbios_write_type11(unsigned long *current, int *handle)
static int smbios_write_type17(unsigned long *current, int *handle)
{
int len = sizeof(struct smbios_type17);
+ int totallen = 0;
int i;
struct memory_info *meminfo;
@@ -486,8 +487,9 @@ static int smbios_write_type17(unsigned long *current, int *handle)
dimm = &meminfo->dimm[i];
len = create_smbios_type17_for_dimm(dimm, current, handle);
*current += len;
+ totallen += len;
}
- return meminfo->dimm_cnt * len;
+ return totallen;
}
static int smbios_write_type32(unsigned long *current, int handle)
Iru Cai (mytbk920423(a)gmail.com) just uploaded a new patch set to gerrit, which you can find at https://review.coreboot.org/14008
-gerrit
commit af8981f0f3fdef6419844d57136d2a1182b1cdd8
Author: Iru Cai <mytbk920423(a)gmail.com>
Date: Wed Mar 9 23:22:58 2016 +0800
src/arch/x86/smbios: fix length calculation for SMBIOS type 17
Different DIMM modules give different SMBIOS type 17 length, so we
can't use `meminfo->dimm_cnt*len' for entry struct size, otherwise
it'll give a wrong SMBIOS size when two or more different DIMMs are
installed on the machine.
Change-Id: I0e33853f6aa4b30da547eb433839a397d451a8cf
Signed-off-by: Iru Cai <mytbk920423(a)gmail.com>
---
src/arch/x86/smbios.c | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/src/arch/x86/smbios.c b/src/arch/x86/smbios.c
index 8c87635..f380057 100644
--- a/src/arch/x86/smbios.c
+++ b/src/arch/x86/smbios.c
@@ -473,6 +473,7 @@ static int smbios_write_type11(unsigned long *current, int *handle)
static int smbios_write_type17(unsigned long *current, int *handle)
{
int len = sizeof(struct smbios_type17);
+ int totallen = 0;
int i;
struct memory_info *meminfo;
@@ -486,8 +487,9 @@ static int smbios_write_type17(unsigned long *current, int *handle)
dimm = &meminfo->dimm[i];
len = create_smbios_type17_for_dimm(dimm, current, handle);
*current += len;
+ totallen += len;
}
- return meminfo->dimm_cnt * len;
+ return totallen;
}
static int smbios_write_type32(unsigned long *current, int handle)
Iru Cai (mytbk920423(a)gmail.com) just uploaded a new patch set to gerrit, which you can find at https://review.coreboot.org/14008
-gerrit
commit 14a932f75e1eb04fcf09278430e6b42468a78cd5
Author: Iru Cai <mytbk920423(a)gmail.com>
Date: Wed Mar 9 23:22:58 2016 +0800
src/arch/x86/smbios: fix length calculation for SMBIOS type 17
Different DIMM module gives different SMBIOS type 17 length, so we
can't use `meminfo->dimm_cnt * len' for entry struct size, otherwise
it'll give a wrong SMBIOS size when two or more different DIMMs are
installed on the machine.
Change-Id: I0e33853f6aa4b30da547eb433839a397d451a8cf
Signed-off-by: Iru Cai <mytbk920423(a)gmail.com>
---
src/arch/x86/smbios.c | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/src/arch/x86/smbios.c b/src/arch/x86/smbios.c
index 8c87635..f380057 100644
--- a/src/arch/x86/smbios.c
+++ b/src/arch/x86/smbios.c
@@ -473,6 +473,7 @@ static int smbios_write_type11(unsigned long *current, int *handle)
static int smbios_write_type17(unsigned long *current, int *handle)
{
int len = sizeof(struct smbios_type17);
+ int totallen = 0;
int i;
struct memory_info *meminfo;
@@ -486,8 +487,9 @@ static int smbios_write_type17(unsigned long *current, int *handle)
dimm = &meminfo->dimm[i];
len = create_smbios_type17_for_dimm(dimm, current, handle);
*current += len;
+ totallen += len;
}
- return meminfo->dimm_cnt * len;
+ return totallen;
}
static int smbios_write_type32(unsigned long *current, int handle)
Antonello Dettori (dev(a)dettori.io) just uploaded a new patch set to gerrit, which you can find at https://review.coreboot.org/13937
-gerrit
commit 6d870bc24da37065a908e3a994841803289c5271
Author: Antonello Dettori <dev(a)dettori.io>
Date: Mon Mar 7 23:56:57 2016 +0000
payloads/seabios: Add "git revision" to the SeaBIOS version menu
Add an option to specify a git revision from which to build SeaBIOS.
Change-Id: Ifbf3b82e784f79395ab7cd07c5804f72928d7640
Signed-off-by: Antonello Dettori <dev(a)dettori.io>
---
payloads/external/Makefile.inc | 2 ++
payloads/external/SeaBIOS/Kconfig | 16 ++++++++++++++++
payloads/external/SeaBIOS/Makefile.inc | 7 +++++++
3 files changed, 25 insertions(+)
diff --git a/payloads/external/Makefile.inc b/payloads/external/Makefile.inc
index 557de2a..5eb1062 100644
--- a/payloads/external/Makefile.inc
+++ b/payloads/external/Makefile.inc
@@ -45,6 +45,8 @@ seabios:
AS="$(AS_x86_32)" IASL="$(IASL)" \
CONFIG_SEABIOS_MASTER=$(CONFIG_SEABIOS_MASTER) \
CONFIG_SEABIOS_STABLE=$(CONFIG_SEABIOS_STABLE) \
+ CONFIG_SEABIOS_REVISION=$(CONFIG_SEABIOS_REVISION) \
+ CONFIG_SEABIOS_REVISION_ID=$(CONFIG_SEABIOS_REVISION_ID) \
CONFIG_PAYLOAD_CONFIGFILE=$(CONFIG_PAYLOAD_CONFIGFILE) \
CONFIG_SEABIOS_THREAD_OPTIONROMS=$(CONFIG_SEABIOS_THREAD_OPTIONROMS) \
CONFIG_SEABIOS_VGA_COREBOOT=$(CONFIG_SEABIOS_VGA_COREBOOT) \
diff --git a/payloads/external/SeaBIOS/Kconfig b/payloads/external/SeaBIOS/Kconfig
index 70f5ce2..8a8d931 100644
--- a/payloads/external/SeaBIOS/Kconfig
+++ b/payloads/external/SeaBIOS/Kconfig
@@ -12,9 +12,25 @@ config SEABIOS_MASTER
bool "master"
help
Newest SeaBIOS version
+config SEABIOS_REVISION
+ bool "git revision"
+ help
+ Select this option if you have a specific commit or branch
+ that you want to use as the revision from which to
+ build SeaBIOS.
+
+ You will be able to specify the name of a branch or a commit id
+ later.
endchoice
+config SEABIOS_REVISION_ID
+ string "Insert a commit's SHA-1 or a branch name"
+ depends on SEABIOS_REVISION
+ default "origin/master"
+ help
+ The commit's SHA-1 or branch name of the revision to use.
+
config SEABIOS_PS2_TIMEOUT
prompt "PS/2 keyboard controller initialization timeout (milliseconds)"
default 0
diff --git a/payloads/external/SeaBIOS/Makefile.inc b/payloads/external/SeaBIOS/Makefile.inc
index c9d9199..baf1539 100644
--- a/payloads/external/SeaBIOS/Makefile.inc
+++ b/payloads/external/SeaBIOS/Makefile.inc
@@ -1,5 +1,6 @@
TAG-$(CONFIG_SEABIOS_MASTER)=origin/master
TAG-$(CONFIG_SEABIOS_STABLE)=b3ef39f532db52bf17457ba931da758eeb38d6b4
+TAG-$(CONFIG_SEABIOS_REVISION)=$(CONFIG_SEABIOS_REVISION_ID)
unexport KCONFIG_AUTOHEADER
unexport KCONFIG_AUTOCONFIG
@@ -15,6 +16,12 @@ seabios:
git clone http://review.coreboot.org/p/seabios.git seabios
fetch: seabios
+ifeq ($(CONFIG_SEABIOS_REVISION),y)
+ifeq ($(CONFIG_SEABIOS_REVISION_ID),)
+ echo "Error: There is no revision specified for SeaBIOS"
+ false
+endif
+endif
cd seabios; git show $(TAG-y) >/dev/null 2>&1 ; if [ $$? -ne 0 ]; \
then echo " Fetching new commits from the SeaBIOS git repo"; git fetch; fi