the following patch was just integrated into master:
commit cbaab7ee3cf1080a98fe376564e5aadfe169c1d6
Author: Martin Roth <martinroth(a)google.com>
Date: Wed Aug 31 21:26:17 2016 -0600
util/docker: Add a makefile for common docker tasks
Commands for working with docker images:
build-coreboot-sdk - Build coreboot-sdk container
upload-coreboot-sdk - Upload coreboot-sdk to hub.docker.com
build-coreboot-jenkins-node - Build coreboot-jenkins-node container
upload-coreboot-jenkins-node - Upload coreboot-jenkins-node to hub.docker.com
clean_coreboot_containers - remove all docker coreboot containers
clean_coreboot_images - remove all docker coreboot images
Commands for using docker images
docker_build_coreboot <BUILD_CMD=target> - Build coreboot under coreboot-sdk
docker_abuild <ABUILD_ARGS='-a -B'> - Run abuild under coreboot-sdk
Change-Id: I3a75b0615747d32f593948f53eab076f303271bf
Signed-off-by: Martin Roth <martinroth(a)google.com>
Reviewed-on: https://review.coreboot.org/16388
Tested-by: build bot (Jenkins)
Reviewed-by: Philipp Deppenwiese <zaolin.daisuki(a)googlemail.com>
Reviewed-by: Patrick Georgi <pgeorgi(a)google.com>
See https://review.coreboot.org/16388 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/17345
-gerrit
commit 1a29dc514975f6c755b7e28a062650096c12e4a7
Author: Martin Roth <martinroth(a)google.com>
Date: Wed Nov 9 14:27:00 2016 -0700
lint/kconfig_lint: Make sure all symbols have a type defined
Show an error if a symbol does not have a defined type.
This caused a problem of an undefined symbol in check_defaults, so
we just skip those symbols there as we can't verify the default pattern
without knowing the type.
Change-Id: I28711a77962e16f6fc89789400363edd0fdd0931
Signed-off-by: Martin Roth <martinroth(a)google.com>
---
util/lint/kconfig_lint | 29 +++++++++++++++++++++++++++++
util/lint/kconfig_lint_README | 1 +
2 files changed, 30 insertions(+)
diff --git a/util/lint/kconfig_lint b/util/lint/kconfig_lint
index ae10c03..bbf3e38 100755
--- a/util/lint/kconfig_lint
+++ b/util/lint/kconfig_lint
@@ -85,6 +85,7 @@ sub Main {
load_config($config_file) if ($config_file);
+ check_type();
check_defaults();
check_referenced_symbols();
@@ -273,6 +274,31 @@ sub check_for_def {
}
#-------------------------------------------------------------------------------
+# check_type - Make sure that all symbols have a type defined.
+#
+# Conflicting types are found when parsing the Kconfig tree.
+#-------------------------------------------------------------------------------
+sub check_type {
+
+ # loop through each defined symbol
+ foreach my $sym ( sort ( keys %symbols ) ) {
+
+ # Make sure there's a type set for the symbol
+ if (!defined $symbols{$sym}{type}) {
+
+ #loop through each instance of that symbol
+ for ( my $sym_num = 0 ; $sym_num <= $symbols{$sym}{count} ; $sym_num++ ) {
+
+ my $filename = $symbols{$sym}{$sym_num}{file};
+ my $line_no = $symbols{$sym}{$sym_num}{line_no};
+
+ show_error("No type defined for symbol $sym defined at $filename:$line_no.");
+ }
+ }
+ }
+}
+
+#-------------------------------------------------------------------------------
# check_is_enabled - The IS_ENABLED() macro is only valid for symbols of type
# bool. It would probably work on type hex or int if the value was 0 or 1, but
# this seems like a bad plan. Using it on strings is dead out.
@@ -333,6 +359,9 @@ sub check_defaults {
my $filename = $symbols{$sym}{$sym_num}{file};
my $line_no = $symbols{$sym}{$sym_num}{default}{$def_num}{default_line_no};
+ # Make sure there's a type set for the symbol
+ next if (!defined $symbols{$sym}{type});
+
# skip good defaults
if (! ((($symbols{$sym}{type} eq "hex") && ($symbols{$sym}{$sym_num}{default}{$def_num}{default} =~ /^0x/)) ||
(($symbols{$sym}{type} eq "int") && ($symbols{$sym}{$sym_num}{default}{$def_num}{default} =~ /^[-0-9]+$/)) ||
diff --git a/util/lint/kconfig_lint_README b/util/lint/kconfig_lint_README
index 5a5eacd..c36320e 100644
--- a/util/lint/kconfig_lint_README
+++ b/util/lint/kconfig_lint_README
@@ -89,6 +89,7 @@ Errors in Kconfig that are also caught by Kconfig itself:
int in another location.
- Type keywords (bool, int, hex, string) used outside of a config block.
- Using a 'prompt' keyword not inside a config or choice block.
+- Symbols with no defined type.
Errors in coreboot source files:
- The IS_ENABLED macro is only valid for bool symbols.
the following patch was just integrated into master:
commit a0f6f9bdbc609e60b64a9d1551006c4cffedc977
Author: Kevin Chiu <Kevin.Chiu(a)quantatw.com>
Date: Fri Dec 9 11:42:05 2016 +0800
google/pyro: Set PL2 override to 15000mW
This patch sets PL2 override value to 15W in RAPL registers
and sets DPTF PL2 Max to 15W
BUG=none
BRANCH=reef
TEST=emerge-pyro coreboot
Change-Id: Ibadf0fa442f556d018c249b1cf88e29c4d57c97f
Signed-off-by: Kevin Chiu <Kevin.Chiu(a)quantatw.com>
Reviewed-on: https://review.coreboot.org/17779
Tested-by: build bot (Jenkins)
Reviewed-by: Aaron Durbin <adurbin(a)chromium.org>
See https://review.coreboot.org/17779 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/17658
-gerrit
commit a06418b866a9e459bbeaa5a9cfb5c5abd380302f
Author: Martin Roth <martinroth(a)google.com>
Date: Wed Nov 30 10:29:39 2016 -0700
util/lint: add check for auto-included headers
Since we've removed them from the tree, add a check to keep them out.
Change-Id: I2995da765fee8796a297963d54a1c34f56376efe
Signed-off-by: Martin Roth <martinroth(a)google.com>
---
util/lint/lint-stable-019-header-files | 36 ++++++++++++++++++++++++++++++++++
1 file changed, 36 insertions(+)
diff --git a/util/lint/lint-stable-019-header-files b/util/lint/lint-stable-019-header-files
new file mode 100755
index 0000000..e98c3b5
--- /dev/null
+++ b/util/lint/lint-stable-019-header-files
@@ -0,0 +1,36 @@
+#!/bin/sh
+# This file is part of the coreboot project.
+#
+# Copyright (C) 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 for auto-included headers
+
+LC_ALL=C export LC_ALL
+
+INCLUDED_DIRS='^src/'
+EXCLUDED_FILES='src/include/kconfig.h'
+
+# TODO: Add rules when those patches are complete
+HEADER_FILES="k*config"
+
+# Use git grep if the code is in a git repo, otherwise use grep.
+if [ -n "$(command -v git)" ] && [ -d .git ]; then
+ GREP_FILES="git grep -n"
+else
+ GREP_FILES="grep -rn"
+fi
+
+for header in $HEADER_FILES; do
+ ${GREP_FILES} "#\s*include\s\+[\"<]\s*${header}\.h\s*[\">]" | \
+ grep "$INCLUDED_DIRS" | \
+ grep -v "$EXCLUDED_FILES"; \
+done
\ No newline at end of file
the following patch was just integrated into master:
commit 8d49d52ae930de51633c6533f61a710235399dad
Author: Martin Roth <martinroth(a)google.com>
Date: Wed Oct 12 14:40:26 2016 -0600
Makefile.inc: Update what-jenkins-does target
- Update the junit.xml target to make it less util specific
- Add builds of coreboot internal payloads: nvramcui and coreinfo
Change-Id: I97fda909065659ab7fa4c8ee00d936d97b255bf7
Signed-off-by: Martin Roth <martinroth(a)google.com>
Reviewed-on: https://review.coreboot.org/17014
Tested-by: build bot (Jenkins)
Reviewed-by: Paul Menzel <paulepanter(a)users.sourceforge.net>
Reviewed-by: Patrick Georgi <pgeorgi(a)google.com>
See https://review.coreboot.org/17014 for details.
-gerrit
the following patch was just integrated into master:
commit 9fdb41ab9a60c59d1c3ae727da7247f1de46c9d3
Author: Martin Roth <martinroth(a)google.com>
Date: Tue Dec 6 09:51:54 2016 -0700
util/abuild: Add more error handling for command line options
- Show an error if a directory is added after the command line options
to catch scripts using the old parameters.
- If an invalid parameter is specified, show the parameter.
Change-Id: Ie8948361f1c51e89a99bdb13df8c554747cd521d
Signed-off-by: Martin Roth <martinroth(a)google.com>
Reviewed-on: https://review.coreboot.org/17741
Tested-by: build bot (Jenkins)
Reviewed-by: Paul Menzel <paulepanter(a)users.sourceforge.net>
Reviewed-by: Patrick Georgi <pgeorgi(a)google.com>
See https://review.coreboot.org/17741 for details.
-gerrit
the following patch was just integrated into master:
commit 5b0d2dbdceacca09b9758a92ad078aa18256d469
Author: Martin Roth <martinroth(a)google.com>
Date: Tue Dec 6 09:18:36 2016 -0700
util/abuild: Add argument -R to specify root directory
cbroot was previously specified by just adding it to the end of the
command line with no explicit identifier. This change allows it to
go anywhere in the command line and adds the -R or --root identifier.
This makes the command line more consistent. Most of the time, this
argument isn't even needed, as the automatic detection finds cbroot.
Change-Id: I1d6fd8f51765d0d8b29be8af1e8105e06dd44cc8
Signed-off-by: Martin Roth <martinroth(a)google.com>
Reviewed-on: https://review.coreboot.org/17740
Tested-by: build bot (Jenkins)
Reviewed-by: Patrick Georgi <pgeorgi(a)google.com>
See https://review.coreboot.org/17740 for details.
-gerrit
the following patch was just integrated into master:
commit b06bfa4d39b64968b152e6e5bcd165d22ceb21de
Author: Martin Roth <martinroth(a)google.com>
Date: Mon Dec 5 09:15:33 2016 -0700
util/abuild: Clean up usage
- Indent with spaces for consistency
- Change lbroot to cbroot
- Remove incomplete list of options from usage line
- Capitalize first word of all option text
- Alphabetize options other than version and help
- Move version and help options to the end
Change-Id: Id5bd4db8d7e3705cbbb93895a46a3608cd1b09e2
Signed-off-by: Martin Roth <martinroth(a)google.com>
Reviewed-on: https://review.coreboot.org/17724
Tested-by: build bot (Jenkins)
Reviewed-by: Patrick Georgi <pgeorgi(a)google.com>
See https://review.coreboot.org/17724 for details.
-gerrit
the following patch was just integrated into master:
commit 02c93b9b1fb2a6fef9c90cc7aef16777e022698b
Author: Martin Roth <martinroth(a)google.com>
Date: Wed Nov 30 16:32:20 2016 -0700
util/abuild: Fix or disable shellcheck warnings
This cleans up the shellcheck warnings in abuild.
Warning count:
1 Unexpected ==.
1 Use "${var:?}" to ensure this never expands to / .
1 VARIABLE appears unused. Verify it or export it.
1 Use "$@" (with quotes) to prevent whitespace problems.
2 Consider using { cmd1; cmd2; } >> file instead of individual redirects.
2 Expressions don't expand in single quotes, use double quotes for that.
3 Prefer [ p ] || [ q ] as [ p -o q ] is not well defined.
4 $/${} is unnecessary on arithmetic variables.
5 Check exit code directly with 'if mycmd;', not indirectly with $?.
5 Use cd ... || exit in case cd fails.
11 Declare and assign separately to avoid masking return values.
13 Use $(..) instead of legacy `..`.
20 Don't use variables in the printf format string.
104 Double quote to prevent globbing.
Change-Id: I9c77e122435ba87ce3a4aee76b5022f7265f9ef2
Signed-off-by: Martin Roth <martinroth(a)google.com>
Reviewed-on: https://review.coreboot.org/17722
Tested-by: build bot (Jenkins)
Reviewed-by: Patrick Georgi <pgeorgi(a)google.com>
See https://review.coreboot.org/17722 for details.
-gerrit