the following patch was just integrated into master:
commit 4852dec1ab21e6c6e32eb85354ce4f4182537442
Author: david <david_wu(a)quantatw.com>
Date: Tue Dec 29 15:02:04 2015 +0800
intel/skylake: Add gpio macro for unused GPIO pins
Unused PINS will be controlled by GPIO controller (PMODE = GPIO) and
GPIO TX/RX will be disabled.
BUG=none
BRANCH=none
TEST=Build and boot lars
Change-Id: I3a6fcd2f3462e8e0d1273aa80b1599b76b160825
Signed-off-by: Patrick Georgi <pgeorgi(a)chromium.org>
Original-Commit-Id: 889bfd66dbc918e9fb0ba1b95b63fd7a3bf180d9
Original-Change-Id: I3bf4aa8599255e5382d99810b4c83b4c97c648b6
Original-Signed-off-by: David Wu <David_Wu(a)quantatw.com>
Original-Reviewed-on: https://chromium-review.googlesource.com/319964
Original-Commit-Ready: David Wu <david_wu(a)quantatw.com>
Original-Tested-by: David Wu <david_wu(a)quantatw.com>
Original-Reviewed-by: Aaron Durbin <adurbin(a)chromium.org>
Original-Reviewed-by: Rajneesh Bhardwaj <rajneesh.bhardwaj(a)intel.com>
Original-Reviewed-by: Pratikkumar V Prajapati <pratikkumar.v.prajapati(a)intel.com>
Reviewed-on: https://review.coreboot.org/13628
Tested-by: build bot (Jenkins)
Reviewed-by: Martin Roth <martinroth(a)google.com>
See https://review.coreboot.org/13628 for details.
-gerrit
Martin Roth (martinroth(a)google.com) just uploaded a new patch set to gerrit, which you can find at https://review.coreboot.org/13647
-gerrit
commit 27c8a485721d13d35d2365c3925d36648a00ab49
Author: Martin Roth <martinroth(a)chromium.org>
Date: Tue Feb 9 11:21:17 2016 -0700
chromeos/Kconfig: Add GBB_HAVE_BMPFV symbol
Presumably, this symbol will be selected by mainboards or chipsets.
Give it a definition so that when it's selected it will work as
expected. This also fixes the dependency of GBB_BMPFV_FILE below.
Change-Id: I2b0a3fca82d85962fc882f237b70702cab0400db
Signed-off-by: Martin Roth <martinroth(a)chromium.org>
---
src/vendorcode/google/chromeos/Kconfig | 3 +++
1 file changed, 3 insertions(+)
diff --git a/src/vendorcode/google/chromeos/Kconfig b/src/vendorcode/google/chromeos/Kconfig
index 4a889b1..9837bac 100644
--- a/src/vendorcode/google/chromeos/Kconfig
+++ b/src/vendorcode/google/chromeos/Kconfig
@@ -174,6 +174,9 @@ config GBB_HWID
string "Hardware ID"
default "NOCONF HWID"
+config GBB_HAVE_BMPFV
+ def_bool n
+
config GBB_BMPFV_FILE
string "Path to bmpfv image"
depends on GBB_HAVE_BMPFV
Martin Roth (martinroth(a)google.com) just uploaded a new patch set to gerrit, which you can find at https://review.coreboot.org/13538
-gerrit
commit 265f1a32cba56359958e7365885644824abeec42
Author: Martin Roth <martinroth(a)google.com>
Date: Sun Jan 31 10:34:13 2016 -0700
kconfig_lint: Check for IS_ENABLED used on symbols without CONFIG_
This looks at the coreboot codebase for the IS_ENABLED macro, and
gives an error if there is a symbol used without the CONFIG_ prefix.
This only works for symbols of type bool.
A future check will be added for all symbols, but that will take
a significant amount of time to run, because each symbol will need
to be searched for individually.
Change-Id: I92f2de2d231610d1a788da965f21966d89c2f25c
Signed-off-by: Martin Roth <martinroth(a)google.com>
---
util/lint/kconfig_lint | 21 +++++++++++++++++++++
util/lint/kconfig_lint_README | 1 +
2 files changed, 22 insertions(+)
diff --git a/util/lint/kconfig_lint b/util/lint/kconfig_lint
index adb42c8..787ab6a 100755
--- a/util/lint/kconfig_lint
+++ b/util/lint/kconfig_lint
@@ -210,6 +210,27 @@ sub check_for_ifdef {
}
}
}
+
+ my @collected_is_enabled;
+ if ($dont_use_git_grep) {
+ @collected_is_enabled =
+ `grep -Irn -- "[[:space:]]IS_ENABLED[[:space:]]*(.*)" | grep -v '$exclude_dirs_and_files' | grep -v "kconfig.h"`;
+ }
+ else {
+ @collected_is_enabled =
+ `git grep -In -- "[[:space:]]IS_ENABLED[[:space:]]*(.*)" | grep -v '$exclude_dirs_and_files' | grep -v "kconfig.h"`;
+ }
+
+ while ( my $line = shift @collected_is_enabled ) {
+ if ($line !~ /CONFIG_/ && $line =~ /^([^:]+):(\d+):.+IS_ENABLED\s*\(\s*(\w+)/ ) {
+ my $file = $1;
+ my $lineno = $2;
+ my $symbol = $3;
+ if ( ( exists $symbols{$symbol} ) ) {
+ show_error("IS_ENABLED missing CONFIG_ prefix on symbol '$symbol' at $file:$lineno.");
+ }
+ }
+ }
}
#-------------------------------------------------------------------------------
diff --git a/util/lint/kconfig_lint_README b/util/lint/kconfig_lint_README
index 9076f4c..3c638f5 100644
--- a/util/lint/kconfig_lint_README
+++ b/util/lint/kconfig_lint_README
@@ -93,5 +93,6 @@ Errors in coreboot source files:
defined in coreboot's version of Kconfig.
- The IS_ENABLED macro is only valid for bool symbols.
- The IS_ENABLED used on unknown CONFIG_ value, like an obsolete symbol.
+- The IS_ENABLED macro is used on a symbol without the CONFIG_ prefix.
TODO: check for choice entries at the top level
the following patch was just integrated into master:
commit 1c85fea945307404546ac953a65329b2b37aec36
Author: Lee Leahy <leroy.p.leahy(a)intel.com>
Date: Mon Feb 8 13:57:47 2016 -0800
Documentation: Add Quark EDK2 build instructions for Linux
Document the Linux build instructions for EDK2.
TEST=Build EDK2 for Quark on Ubuntu 14.04
Change-Id: I5f87eb2c5879f2fd4dd18880908756089a0c7a51
Signed-off-by: Lee Leahy <leroy.p.leahy(a)intel.com>
Reviewed-on: https://review.coreboot.org/13644
Tested-by: build bot (Jenkins)
Reviewed-by: Martin Roth <martinroth(a)google.com>
See https://review.coreboot.org/13644 for details.
-gerrit
Martin Roth (martinroth(a)google.com) just uploaded a new patch set to gerrit, which you can find at https://review.coreboot.org/13542
-gerrit
commit 0986c68b1ccb9c91aa8b3137e3bf587972dca22d
Author: Martin Roth <martinroth(a)google.com>
Date: Sun Jan 31 15:17:34 2016 -0700
kconfig_lint: update kconfig lint shell scripts
- Add lint-stable script with just error checking
- Enable warnings in addition to errors in non-stable test.
- Use git grep if the code is in a git repo now that exclusions are
working.
- Check for perl, and ask the user to install it if it isn't
available.
Change-Id: Ie60d21f4ef8a61d879f116eb2056eb805b0a55f2
Signed-off-by: Martin Roth <martinroth(a)google.com>
---
util/lint/lint-008-kconfig | 16 ++++++++++++++--
util/lint/lint-stable-008-kconfig | 30 ++++++++++++++++++++++++++++++
2 files changed, 44 insertions(+), 2 deletions(-)
diff --git a/util/lint/lint-008-kconfig b/util/lint/lint-008-kconfig
index 16ae251..9716d1c 100755
--- a/util/lint/lint-008-kconfig
+++ b/util/lint/lint-008-kconfig
@@ -12,7 +12,19 @@
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
-# DESCR: check Kconfig files
+# DESCR: check Kconfig files for warnings or errors
LC_ALL=C export LC_ALL
-env perl util/lint/kconfig_lint --no_git_grep --warnings_off
+
+# Verify that the test can run, tell users the issue
+if [ -z "$(command -v perl)" ]; then
+ echo "The kconfig lint tool uses perl. Please install it to run this test."
+fi
+
+# If coreboot is in a git repo, use git grep to check as it will ignore any
+# files in the tree that aren't checked into git
+if [ -n "$(command -v git)" ] && [ -e ".git" ]; then
+ env perl util/lint/kconfig_lint
+else
+ env perl util/lint/kconfig_lint --no_git_grep
+fi
diff --git a/util/lint/lint-stable-008-kconfig b/util/lint/lint-stable-008-kconfig
new file mode 100755
index 0000000..986fdc9
--- /dev/null
+++ b/util/lint/lint-stable-008-kconfig
@@ -0,0 +1,30 @@
+#!/bin/sh
+# This file is part of the coreboot project.
+#
+# Copyright 2016 Google Inc.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; version 2 of the License.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# DESCR: check Kconfig files for errors
+
+LC_ALL=C export LC_ALL
+
+# Verify that the test can run, tell users the issue
+if [ -z "$(command -v perl)" ]; then
+ echo "The kconfig lint tool uses perl. Please install it to run this test."
+fi
+
+# If coreboot is in a git repo, use git grep to check as it will ignore any
+# files in the tree that aren't checked into git
+if [ -n "$(command -v git)" ] && [ -e ".git" ]; then
+ env perl util/lint/kconfig_lint --warnings_off
+else
+ env perl util/lint/kconfig_lint --no_git_grep --warnings_off
+fi
Martin Roth (martinroth(a)google.com) just uploaded a new patch set to gerrit, which you can find at https://review.coreboot.org/13541
-gerrit
commit 6e1447c67f5b9256d6091fbf5c66a3057738f587
Author: Martin Roth <martinroth(a)google.com>
Date: Sun Jan 31 10:44:33 2016 -0700
kconfig_lint: demote 'always defined' errors to warnings
To be able to rrun this as a lint-stable test, demote these to warnings
for now. After the current CONFIG_MAINBOARD_POWER_ON_AFTER_POWER_FAIL
issues get fixed, these can be promoted again.
Change-Id: I1432980eb0c871fc61c12dcc351f8d46513a7965
Signed-off-by: Martin Roth <martinroth(a)google.com>
---
util/lint/kconfig_lint | 4 ++--
util/lint/kconfig_lint_README | 4 ++--
2 files changed, 4 insertions(+), 4 deletions(-)
diff --git a/util/lint/kconfig_lint b/util/lint/kconfig_lint
index 787ab6a..b5a62d3 100755
--- a/util/lint/kconfig_lint
+++ b/util/lint/kconfig_lint
@@ -186,7 +186,7 @@ sub check_for_ifdef {
my $symbol = $3;
if ( ( exists $symbols{$symbol} ) && ( $symbols{$symbol}{type} ne "string" ) ) {
- show_error( "#ifdef 'CONFIG_$symbol' used at $file:$lineno."
+ show_warning( "#ifdef 'CONFIG_$symbol' used at $file:$lineno."
. " Symbols of type '$symbols{$symbol}{type}' are always defined." );
}
}
@@ -205,7 +205,7 @@ sub check_for_ifdef {
if ( $line =~ /^([^:]+):(\d+):.+defined\s*\(\s*CONFIG_$symbol.*(&&|\|\|)\s*!?\s*\(?\s*CONFIG_$symbol/ );
if ( ( exists $symbols{$symbol} ) && ( $symbols{$symbol}{type} ne "string" ) ) {
- show_error( "defined 'CONFIG_$symbol' used at $file:$lineno."
+ show_warning( "defined 'CONFIG_$symbol' used at $file:$lineno."
. " Symbols of type '$symbols{$symbol}{type}' are always defined." );
}
}
diff --git a/util/lint/kconfig_lint_README b/util/lint/kconfig_lint_README
index 3c638f5..5a5eacd 100644
--- a/util/lint/kconfig_lint_README
+++ b/util/lint/kconfig_lint_README
@@ -57,6 +57,8 @@ Warnings in coreboot source files:
symbols.
- 'IS_ENABLED()' block that could not be interpreted.
- Kconfig files that are not loaded by a 'source' keyword.
+- '#ifdef' or '#if defined' used on bool, int, or hex - these are always
+ defined in coreboot's version of Kconfig.
Errors in Kconfig files:
- Selects do not work on symbols created in a choice block.
@@ -89,8 +91,6 @@ Errors in Kconfig that are also caught by Kconfig itself:
- Using a 'prompt' keyword not inside a config or choice block.
Errors in coreboot source files:
-- '#ifdef' or '#if defined' used on bool, int, or hex - these are always
- defined in coreboot's version of Kconfig.
- The IS_ENABLED macro is only valid for bool symbols.
- The IS_ENABLED used on unknown CONFIG_ value, like an obsolete symbol.
- The IS_ENABLED macro is used on a symbol without the CONFIG_ prefix.
the following patch was just integrated into master:
commit e995dad2e1088e6895c01055997249bd2aa0d7ad
Author: Patrick Georgi <pgeorgi(a)chromium.org>
Date: Mon Feb 1 15:26:26 2016 +0100
build system: Build Chrome EC firmware on request
With the Chrome EC's "board" name set in Kconfig, the build system will
build and add the EC firmware, too. Available for the EC and the USB
PD controller.
Change-Id: I017d3a44d6ab8a540fcd198b4b09c35e4b98a8cf
Signed-off-by: Patrick Georgi <pgeorgi(a)chromium.org>
Reviewed-on: https://review.coreboot.org/13547
Tested-by: build bot (Jenkins)
Reviewed-by: Martin Roth <martinroth(a)google.com>
See https://review.coreboot.org/13547 for details.
-gerrit