Commit graph

18653 commits

Author SHA1 Message Date
Aaron Durbin
2332a5a550 UPSTREAM: commonlib/region: allow empty mmap()/munmap() in region_device_ops
Instead of assuming all region_devices have an mmap() and munmap()
implementation fail those calls when one isn't provided.

BUG=chrome-os-partner:56151
BRANCH=None
TEST=None

Signed-off-by: Aaron Durbin <adurbin@chromium.org>
Reviewed-on: https://review.coreboot.org/16190
Reviewed-by: Furquan Shaikh <furquan@google.com>
Reviewed-by: Paul Menzel <paulepanter@users.sourceforge.net>

Change-Id: I9b03e084aa604d52d6b5bab47c0bf99d9fbcd422
Reviewed-on: https://chromium-review.googlesource.com/370716
Commit-Ready: Furquan Shaikh <furquan@chromium.org>
Tested-by: Furquan Shaikh <furquan@chromium.org>
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
2016-08-16 03:08:37 -07:00
Aaron Durbin
64da69361e UPSTREAM: soc/intel/skylake: don't include all SPI flash drivers
The SPI host controller for the SPI boot device doesn't allow
normal probing because it uses the hardware sequencer all
the time. Therefore, it's pointless to include unnecessary
SPI flash drivers.

BUG=chrome-os-partner:56151
BRANCH=None
TEST=None

Signed-off-by: Aaron Durbin <adurbin@chromium.org>
Reviewed-on: https://review.coreboot.org/16189
Reviewed-by: Furquan Shaikh <furquan@google.com>

Change-Id: Ifcc6492b4bccf7d01b121d908976c9087d12deb0
Reviewed-on: https://chromium-review.googlesource.com/370715
Commit-Ready: Furquan Shaikh <furquan@chromium.org>
Tested-by: Furquan Shaikh <furquan@chromium.org>
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
2016-08-16 03:08:35 -07:00
Aaron Durbin
465013c7e8 UPSTREAM: soc/intel/apollolake: don't include all SPI flash drivers
The SPI host controller for the SPI boot device doesn't allow
normal probing because it uses the hardware sequencer all
the time. Therefore, it's pointless to include unnecessary
SPI flash drivers.

BUG=chrome-os-partner:56151
BRANCH=None
TEST=None

Signed-off-by: Aaron Durbin <adurbin@chromium.org>
Reviewed-on: https://review.coreboot.org/16188
Reviewed-by: Furquan Shaikh <furquan@google.com>

Change-Id: I04551fdb0b207c7ec2f1f171cff62ed7334a5ad5
Reviewed-on: https://chromium-review.googlesource.com/370714
Commit-Ready: Furquan Shaikh <furquan@chromium.org>
Tested-by: Furquan Shaikh <furquan@chromium.org>
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
2016-08-16 03:08:33 -07:00
Aaron Durbin
9575cb99a5 UPSTREAM: drivers/spi: provide option to not include all flash drivers
All flash drivers are automatically included in the build unless
COMMON_CBFS_SPI_WRAPPER was selected. However, there are cases
where these drivers are unnecessary such as certain intel platforms
where spi controller uses hardware sequencing without any ability
to manually probe the device. Therefore, provide an option that the
SoC can set the default value for. The COMMON_CBFS_SPI_WRAPPER
option is still honored by not including all drivers when that
is selected.

BUG=chrome-os-partner:56151
BRANCH=None
TEST=None

Signed-off-by: Aaron Durbin <adurbin@chromium.org>
Reviewed-on: https://review.coreboot.org/16187
Reviewed-by: Furquan Shaikh <furquan@google.com>
Reviewed-by: Vadim Bendebury <vbendeb@chromium.org>
Reviewed-by: Paul Menzel <paulepanter@users.sourceforge.net>

Change-Id: Ie9aa447da450f7c8717545f05cff800139a9e2dd
Reviewed-on: https://chromium-review.googlesource.com/370713
Commit-Ready: Furquan Shaikh <furquan@chromium.org>
Tested-by: Furquan Shaikh <furquan@chromium.org>
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
2016-08-16 03:08:30 -07:00
Aaron Durbin
577b30c19e UPSTREAM: Kconfig: remove unused MULTIPLE_CBFS_INSTANCES option
This option is no longer used in the code base. Remove it.

BUG=chrome-os-partner:56151
BRANCH=None
TEST=None

Signed-off-by: Aaron Durbin <adurbin@chromium.org>
Reviewed-on: https://review.coreboot.org/16186
Reviewed-by: Patrick Georgi <pgeorgi@google.com>
Reviewed-by: Furquan Shaikh <furquan@google.com>

Change-Id: Ia73cce7546c9839518c9e931b03c50856abc2018
Reviewed-on: https://chromium-review.googlesource.com/370712
Commit-Ready: Furquan Shaikh <furquan@chromium.org>
Tested-by: Furquan Shaikh <furquan@chromium.org>
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
2016-08-16 03:08:28 -07:00
Aaron Durbin
5277a3e22e UPSTREAM: Kconfig: separate memory mapped boot device from SPI
Make the indication of the boot device being memory mapped
separate from SPI. However, retain the same defaults that
previously existed.

CQ-DEPEND=CL:370717
BUG=chrome-os-partner:56151
BRANCH=None
TEST=None

Signed-off-by: Aaron Durbin <adurbin@chromium.org>
Reviewed-on: https://review.coreboot.org/16193
Reviewed-by: Andrey Petrov <andrey.petrov@intel.com>
Reviewed-by: Furquan Shaikh <furquan@google.com>
Reviewed-by: Paul Menzel <paulepanter@users.sourceforge.net>

Change-Id: Ibdd7c8754f9bf560a878136b1f55238e2c2549d3
Reviewed-on: https://chromium-review.googlesource.com/370711
Commit-Ready: Furquan Shaikh <furquan@chromium.org>
Tested-by: Furquan Shaikh <furquan@chromium.org>
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
2016-08-16 03:08:26 -07:00
Aaron Durbin
38d7b986b8 UPSTREAM: mainboard/google: remove unused BOOT_MEDIA_SPI_CHIP_SELECT option
The BOOT_MEDIA_SPI_CHIP_SELECT option is not used in any of the
code. Remove its usage.

BUG=chrome-os-partner:56151
BRANCH=None
TEST=None

Signed-off-by: Aaron Durbin <adurbin@chromium.org>
Reviewed-on: https://review.coreboot.org/16185
Reviewed-by: Patrick Georgi <pgeorgi@google.com>
Reviewed-by: Furquan Shaikh <furquan@google.com>
Reviewed-by: Paul Menzel <paulepanter@users.sourceforge.net>

Change-Id: I522b62a2371b8a167ce17c48117669390cda14cd
Reviewed-on: https://chromium-review.googlesource.com/370710
Commit-Ready: Furquan Shaikh <furquan@chromium.org>
Tested-by: Furquan Shaikh <furquan@chromium.org>
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
2016-08-16 03:08:24 -07:00
Furquan Shaikh
124a7650e2 UPSTREAM: intel/quark: Fix assert check
Having an assignment in assert does not make sense. This seems like it
was intended to check if chip is always same as segments->chip.

BUG=None
BRANCH=None
TEST=None

Signed-off-by: Furquan Shaikh <furquan@google.com>
Reviewed-on: https://review.coreboot.org/16219
Reviewed-by: Paul Menzel <paulepanter@users.sourceforge.net>
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
Reviewed-by: Lee Leahy <leroy.p.leahy@intel.com>

Change-Id: I297d9e76a0404a1f510d43f8b9c39e96b557689f
Reviewed-on: https://chromium-review.googlesource.com/370709
Commit-Ready: Furquan Shaikh <furquan@chromium.org>
Tested-by: Furquan Shaikh <furquan@chromium.org>
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
2016-08-16 03:08:21 -07:00
Jonathan Neuschäfer
fbb2d3443c UPSTREAM: arch/riscv: Improve and refactor trap handling diagnostics
BUG=None
BRANCH=None
TEST=None

Signed-off-by: Jonathan Neuschfer <j.neuschaefer@gmx.net>
Reviewed-on: https://review.coreboot.org/16016
Reviewed-by: Ronald G. Minnich <rminnich@gmail.com>

Change-Id: I57032f958c88ea83a420e93b459df4f620799d84
Reviewed-on: https://chromium-review.googlesource.com/370708
Commit-Ready: Furquan Shaikh <furquan@chromium.org>
Tested-by: Furquan Shaikh <furquan@chromium.org>
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
2016-08-16 03:08:19 -07:00
Jonathan Neuschäfer
daf12efdd0 UPSTREAM: mb/gigabyte/ga-b75m-d3v: Add missing board URL
BUG=None
BRANCH=None
TEST=None

Signed-off-by: Jonathan Neuschfer <j.neuschaefer@gmx.net>
Reviewed-on: https://review.coreboot.org/16159
Reviewed-by: Paul Menzel <paulepanter@users.sourceforge.net>
Reviewed-by: Ronald G. Minnich <rminnich@gmail.com>

Change-Id: I990038c09f5805c8e670fd316808dde767e8671b
Reviewed-on: https://chromium-review.googlesource.com/370707
Commit-Ready: Furquan Shaikh <furquan@chromium.org>
Tested-by: Furquan Shaikh <furquan@chromium.org>
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
2016-08-15 18:36:18 -07:00
Jonathan Neuschäfer
5579d86c8f UPSTREAM: arch/riscv: Set the stack pointer upon trap entry
BUG=None
BRANCH=None
TEST=None

Signed-off-by: Jonathan Neuschfer <j.neuschaefer@gmx.net>
Reviewed-on: https://review.coreboot.org/16017
Reviewed-by: Ronald G. Minnich <rminnich@gmail.com>

Change-Id: I52fae62bc6cf775179963720fbcfaa9e07f6a717
Reviewed-on: https://chromium-review.googlesource.com/370706
Commit-Ready: Furquan Shaikh <furquan@chromium.org>
Tested-by: Furquan Shaikh <furquan@chromium.org>
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
2016-08-15 18:36:16 -07:00
Jonathan Neuschäfer
195924d6ac UPSTREAM: soc/ucb/riscv: select BOOTBLOCK_CONSOLE
BUG=None
BRANCH=None
TEST=None

Signed-off-by: Jonathan Neuschfer <j.neuschaefer@gmx.net>
Reviewed-on: https://review.coreboot.org/16158
Reviewed-by: Ronald G. Minnich <rminnich@gmail.com>

Change-Id: I847d7686dec04e9fae7db13d53adc8ca32c56f3a
Reviewed-on: https://chromium-review.googlesource.com/370705
Commit-Ready: Furquan Shaikh <furquan@chromium.org>
Tested-by: Furquan Shaikh <furquan@chromium.org>
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
2016-08-15 18:36:13 -07:00
Aaron Durbin
ca29df1a07 UPSTREAM: drivers/elog: provide more debug info
Provide more informative messages when CONFIG_ELOG_DEBUG is enabled
as well as more informative error messages in the case of
elog_scan_flash() failing. In the sync path the in-memory buffer is
dumped in before the contents are read back from the non-volatile
backing store and dumped again if the subsequent parsing fails.

BUG=chrome-os-partner:55932
BRANCH=None
TEST=None

Signed-off-by: Aaron Durbin <adurbin@chromium.org>
Reviewed-on: https://review.coreboot.org/16184
Reviewed-by: Paul Menzel <paulepanter@users.sourceforge.net>
Reviewed-by: Furquan Shaikh <furquan@google.com>

Change-Id: I716adfb246ef6fbefc0de89cd94b3c1310468896
Reviewed-on: https://chromium-review.googlesource.com/370704
Commit-Ready: Furquan Shaikh <furquan@chromium.org>
Tested-by: Furquan Shaikh <furquan@chromium.org>
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
2016-08-15 18:36:11 -07:00
Barnali Sarkar
8f88bb01b0 UPSTREAM: soc/intel/skylake: Change name pmc_tco_regs to smbus_tco_regs
The function name "pmc_tco_regs" is changed to "smbus_tco_regs"
since TCO offsets belongs to SMBUS PCI device.

BUG=none
BRANCH=none
TEST=Built and booted kunimitsu

Signed-off-by: Barnali Sarkar <barnali.sarkar@intel.com>
Reviewed-on: https://review.coreboot.org/16155
Reviewed-by: Duncan Laurie <dlaurie@chromium.org>

Change-Id: I4ac26df81a8221329f2b45053dd5243cd02f8ad7
Reviewed-on: https://chromium-review.googlesource.com/370703
Commit-Ready: Furquan Shaikh <furquan@chromium.org>
Tested-by: Furquan Shaikh <furquan@chromium.org>
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
2016-08-15 18:36:09 -07:00
Paul Menzel
c4320afe04 UPSTREAM: cpu/ti/am355x: Fix array overrun
> Overrunning array "am335x_gpio_banks" of 4 4-byte elements at element
> index 4 (byte offset 16) using index "bank" (which evaluates to 4).

As the first index is 0, also error out if the index is equal the array
size.

BUG=None
BRANCH=None
TEST=None

Signed-off-by: Paul Menzel <pmenzel@molgen.mpg.de>
Reviewed-on: https://review.coreboot.org/16165
Reviewed-by: Patrick Georgi <pgeorgi@google.com>

Change-Id: I6b6b6e010348a58931bd546dfc54f08460e8dbbc
Reviewed-on: https://chromium-review.googlesource.com/370702
Commit-Ready: Furquan Shaikh <furquan@chromium.org>
Tested-by: Furquan Shaikh <furquan@chromium.org>
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
2016-08-15 18:36:06 -07:00
Elyes HAOUAS
116b54b9e0 UPSTREAM: src/mainboard: Capitalize ROM, RAM, CPU and APIC
BUG=None
BRANCH=None
TEST=None

Signed-off-by: Elyes HAOUAS <ehaouas@noos.fr>
Reviewed-on: https://review.coreboot.org/15987
Reviewed-by: Martin Roth <martinroth@google.com>

Change-Id: Ia1f24d328a065a54975adde067df36c5751bff2d
Reviewed-on: https://chromium-review.googlesource.com/370701
Commit-Ready: Furquan Shaikh <furquan@chromium.org>
Tested-by: Furquan Shaikh <furquan@chromium.org>
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
2016-08-15 18:36:04 -07:00
Martin Roth
95b64d8a77 UPSTREAM: crossgcc: Update make to latest version: 4.2.1
BUG=None
BRANCH=None
TEST=None

Signed-off-by: Martin Roth <martinroth@google.com>
Reviewed-on: https://review.coreboot.org/16164
Reviewed-by: Patrick Georgi <pgeorgi@google.com>
Reviewed-by: Paul Menzel <paulepanter@users.sourceforge.net>
Reviewed-by: Stefan Reinauer <stefan.reinauer@coreboot.org>

Change-Id: I4af90fd2fcfb2a823f9e6b1e975c71581f0b55e9
Reviewed-on: https://chromium-review.googlesource.com/370700
Commit-Ready: Furquan Shaikh <furquan@chromium.org>
Tested-by: Furquan Shaikh <furquan@chromium.org>
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
2016-08-15 18:36:01 -07:00
Martin Roth
7e57057d7a UPSTREAM: crossgcc: Add gnumake target so that make can be built directly
Previously, make could be built as one of the crosgcc* targets, but
there was no way to just rebuild make, as there is for IASL.

- Add an independent target - gnumake.
- Add gnumake to the help text.
- Add gnumake to the list of NOCOMPILE targets (Not compiling coreboot)

BUG=None
BRANCH=None
TEST=None

Signed-off-by: Martin Roth <martinroth@google.com>
Reviewed-on: https://review.coreboot.org/16163
Reviewed-by: Patrick Georgi <pgeorgi@google.com>
Reviewed-by: Paul Menzel <paulepanter@users.sourceforge.net>
Reviewed-by: Stefan Reinauer <stefan.reinauer@coreboot.org>

Change-Id: I4df25f2e209ca14944d491dbfb8e9b085ff7aca3
Reviewed-on: https://chromium-review.googlesource.com/370699
Commit-Ready: Furquan Shaikh <furquan@chromium.org>
Tested-by: Furquan Shaikh <furquan@chromium.org>
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
2016-08-15 18:35:59 -07:00
Martin Roth
dc990bd19a UPSTREAM: util/gitconfig: add cborg2cros.py script
This is a python script that does basically the same thing as the
rebase.sh script, but in the other direction.  rebase.sh takes files
from the chromium tree (cros) and pulls them to the coreboot.org tree.
cborg2cros, as the name implies, updates patches to go into the cros
tree from coreboot.

It adds the 'UPSTREAM: ' identifier to the start of the commit message,
and uses the text '(cherry-picked from commit #####)' instead of
'Original-Commit-Id: #####'

It also adds the 'TEST=', 'BRANCH=', and 'BUG=' lines if they aren't
there.

Signed-off-by: Martin Roth <martinroth@google.com>
Reviewed-on: https://review.coreboot.org/15323
Reviewed-by: Stefan Reinauer <stefan.reinauer@coreboot.org>

Change-Id: Ibad9a5f0d0d2c713cf08e103c463e2e82768c436
Reviewed-on: https://chromium-review.googlesource.com/370698
Commit-Ready: Furquan Shaikh <furquan@chromium.org>
Tested-by: Furquan Shaikh <furquan@chromium.org>
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
2016-08-15 18:35:57 -07:00
Julius Werner
6ae28b205b UPSTREAM: libpayload: head.S: Avoid clearing BSS (and heap) again
3 out of 4 architectures currently zero out the payload BSS in early
assembly code, which is pointless since the code loading the payload has
already done that (with a more efficient memset). ARM64 has never had
any code like this and can run just fine without it. This also defeats
the new optimization of moving the heap out of the BSS, since all three
implementations assume that everything between _edata and _end is BSS.
We should just take this out.

BUG=None
BRANCH=None
TEST=None

Signed-off-by: Julius Werner <jwerner@chromium.org>
Reviewed-on: https://review.coreboot.org/16091
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
Reviewed-by: Stefan Reinauer <stefan.reinauer@coreboot.org>

Change-Id: I45cd2dabd94da43ff0f77e990f11c877cee6cda1
Reviewed-on: https://chromium-review.googlesource.com/370697
Commit-Ready: Furquan Shaikh <furquan@chromium.org>
Tested-by: Furquan Shaikh <furquan@chromium.org>
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
2016-08-15 18:35:54 -07:00
Julius Werner
e10e635726 UPSTREAM: libpayload: cbfs: Fix minor memory leak in some edge cases
cbfs_get_handle() allocates memory for a handle and doesn't free it if
it errors out later, leaving the memory permanently leaked. Fix.

BUG=None
BRANCH=None
TEST=None

Signed-off-by: Julius Werner <jwerner@chromium.org>
Reviewed-on: https://review.coreboot.org/16207
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
Reviewed-by: Paul Menzel <paulepanter@users.sourceforge.net>

Change-Id: Ide198105ce3ad6237672ff152b4490c768909564
Reviewed-on: https://chromium-review.googlesource.com/369153
Commit-Ready: Furquan Shaikh <furquan@chromium.org>
Tested-by: Furquan Shaikh <furquan@chromium.org>
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
2016-08-15 07:36:11 -07:00
Patrick Georgi
dd5b637bda UPSTREAM: Documentation: add start of documentation of the build system
BUG=None
BRANCH=None
TEST=None

Signed-off-by: Patrick Georgi <pgeorgi@chromium.org>
Reviewed-on: https://review.coreboot.org/16150
Reviewed-by: Stefan Reinauer <stefan.reinauer@coreboot.org>

Change-Id: Ic4a4b4d71852bfe0b1fc52373e88d0a53b145844
Reviewed-on: https://chromium-review.googlesource.com/369152
Commit-Ready: Furquan Shaikh <furquan@chromium.org>
Tested-by: Furquan Shaikh <furquan@chromium.org>
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
2016-08-15 07:36:05 -07:00
Lee Leahy
727e1db284 UPSTREAM: drivers/intel/fsp2_0: Fix FSP reset path
Don't verify HOB list pointer or HOBs when FSP returns a reset request.

BRANCH=none
BUG=chrome-os-partner:56159
TEST=Build and run on Galileo Gen2.

Signed-off-by: Lee Leahy <Leroy.P.Leahy@intel.com>
Reviewed-on: https://review.coreboot.org/16162
Reviewed-by: Aaron Durbin <adurbin@chromium.org>

Change-Id: I6382f5ff92092623955806ebff340608c4ee156a
Reviewed-on: https://chromium-review.googlesource.com/369151
Commit-Ready: Furquan Shaikh <furquan@chromium.org>
Tested-by: Furquan Shaikh <furquan@chromium.org>
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
2016-08-15 07:36:03 -07:00
Ravi Sarawadi
2c9dfe61bd UPSTREAM: soc/apollolake: enable access to RTC NVRAM
FSP unconditionally locks parts of the NVRAM in the RTC.
This change will enable coreboot to update the locking policy
and be able to unlock the region

BUG=chrome-os-partner:55944
BRANCH=None

TEST=Check 'crossystem dev_boot_usb=1'

Signed-off-by: Ravi Sarawadi <ravishankar.sarawadi@intel.com>
Reviewed-on: https://review.coreboot.org/16144
Reviewed-by: Furquan Shaikh <furquan@google.com>
Reviewed-by: Paul Menzel <paulepanter@users.sourceforge.net>
Reviewed-by: Giri P Mudusuru <giri.p.mudusuru@intel.com>

Change-Id: I70fd2bafa6ff9eb9cdf284b9780e4b90dee0f4ce
Reviewed-on: https://chromium-review.googlesource.com/369150
Commit-Ready: Furquan Shaikh <furquan@chromium.org>
Tested-by: Furquan Shaikh <furquan@chromium.org>
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
2016-08-15 07:36:01 -07:00
Furquan Shaikh
8606ea4f5e UPSTREAM: reef: Update chromeos.fmd
1. Get rid of LBP2 partition
2. Shrink RO size
3. Increase RW-A and RW-B sizes
4. Increase RW_MRC_CACHE size

CQ-DEPEND=CL:366793, CL:366813
BUG=chrome-os-partner:52127, chrome-os-partner:55699,
chrome-os-partner:55778
BRANCH=None
TEST=Compiles successfully. Boots to OS.

Signed-off-by: Furquan Shaikh <furquan@google.com>
Reviewed-on: https://review.coreboot.org/16145
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
Reviewed-by: Paul Menzel <paulepanter@users.sourceforge.net>

Change-Id: Iad41d8cc7697e6d73f1aa2c699b0e8559349b77e
Reviewed-on: https://chromium-review.googlesource.com/369149
Commit-Ready: Furquan Shaikh <furquan@chromium.org>
Tested-by: Furquan Shaikh <furquan@chromium.org>
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
2016-08-15 07:35:58 -07:00
Jonathan Neuschäfer
fb0699a9ec UPSTREAM: arch/riscv: Fix the page table setup code
In particular:

- Fix the condition of the loop that fills the mid-level page table
- Adhere to the format of sptbr

BUG=None
BRANCH=None
TEST=None

Signed-off-by: Jonathan Neuschfer <j.neuschaefer@gmx.net>
Reviewed-on: https://review.coreboot.org/16120
Reviewed-by: Ronald G. Minnich <rminnich@gmail.com>

Change-Id: I575093445edfdf5a8f54b0f8622ff0e89f77ccec
Reviewed-on: https://chromium-review.googlesource.com/369148
Commit-Ready: Furquan Shaikh <furquan@chromium.org>
Tested-by: Furquan Shaikh <furquan@chromium.org>
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
2016-08-15 07:35:56 -07:00
Jonathan Neuschäfer
29c4f0ec73 UPSTREAM: arch/riscv: Update encoding.h and dependent files
I copied it from commit e10d2def7d of spike and made sure the copyright
header is still there.

BUG=None
BRANCH=None
TEST=None

Signed-off-by: Jonathan Neuschfer <j.neuschaefer@gmx.net>
Reviewed-on: https://review.coreboot.org/15832
Reviewed-by: Stefan Reinauer <stefan.reinauer@coreboot.org>

Change-Id: Ie8b56cd2f4855b97d36a112a195866f4ff0feec5
Reviewed-on: https://chromium-review.googlesource.com/369147
Commit-Ready: Furquan Shaikh <furquan@chromium.org>
Tested-by: Furquan Shaikh <furquan@chromium.org>
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
2016-08-15 07:35:54 -07:00
Alexander Couzens
aa3166ff0c UPSTREAM: lenovo/x60: add info message if dock is present
BUG=None
BRANCH=None
TEST=None

Signed-off-by: Alexander Couzens <lynxis@fe80.eu>
Reviewed-on: https://review.coreboot.org/16136
Reviewed-by: Kysti Mlkki <kyosti.malkki@gmail.com>

Change-Id: I5a6d41f815f65719780499fa18c131311a9dc8f7
Reviewed-on: https://chromium-review.googlesource.com/369146
Commit-Ready: Furquan Shaikh <furquan@chromium.org>
Tested-by: Furquan Shaikh <furquan@chromium.org>
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
2016-08-15 07:35:51 -07:00
Antonello Dettori
4e138c2f13 UPSTREAM: lenovo/x60: add GPIOs initialisation before dock check
Add GPIOs initialisation before dock check.

Needed in order to properly detect the presence or absence of the lenovo
dock.
Previously the check always reported the dock as connected and currently
it always reports it as disconnected since the GPIOs are not properly
initialised during the check.

Tested and confirmed working.

BUG=None
BRANCH=None
TEST=None

Signed-off-by: Antonello Dettori <dev@dettori.io>
Reviewed-on: https://review.coreboot.org/16139
Reviewed-by: Alexander Couzens <lynxis@fe80.eu>
Reviewed-by: Kysti Mlkki <kyosti.malkki@gmail.com>

Change-Id: I7fbf8c2262a1eb5dee9cbe5e23bf44f7f8181009
Reviewed-on: https://chromium-review.googlesource.com/369145
Commit-Ready: Furquan Shaikh <furquan@chromium.org>
Tested-by: Furquan Shaikh <furquan@chromium.org>
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
2016-08-15 07:35:49 -07:00
Rizwan Qureshi
af42a5bd75 UPSTREAM: vendorcode/intel/fsp: Add fsp 2.0 header files for skylake and kabylake
Add FSP 2.0 header files, these files are common for Skylake
and Kabylake, name the folder as skykabylake to signify the same.

BUG=None
BRANCH=None
TEST=None

Signed-off-by: Rizwan Qureshi <rizwan.qureshi@intel.com>
Reviewed-on: https://review.coreboot.org/16050
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
Reviewed-by: Giri P Mudusuru <giri.p.mudusuru@intel.com>

Change-Id: I71b43a59c9a9b0adf1ee48285e4a72e24a13df2d
Reviewed-on: https://chromium-review.googlesource.com/369144
Commit-Ready: Furquan Shaikh <furquan@chromium.org>
Tested-by: Furquan Shaikh <furquan@chromium.org>
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
2016-08-15 07:35:46 -07:00
Patrick Georgi
1b191eef70 UPSTREAM: build system: Print the content of all regions we add files to
That's more useful than just COREBOOT for more complex scenarios

BUG=None
BRANCH=None
TEST=None

Signed-off-by: Patrick Georgi <pgeorgi@chromium.org>
Reviewed-on: https://review.coreboot.org/16143
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
Reviewed-by: Paul Menzel <paulepanter@users.sourceforge.net>

Change-Id: I93cd686d698799a3331ca2ea487cd6efb304caa0
Reviewed-on: https://chromium-review.googlesource.com/369143
Commit-Ready: Furquan Shaikh <furquan@chromium.org>
Tested-by: Furquan Shaikh <furquan@chromium.org>
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
2016-08-15 07:35:44 -07:00
Patrick Georgi
0cdd137e32 UPSTREAM: build system: drop -cbfstool-opts variable support
It was a band-aid that isn't required any more.

BUG=None
BRANCH=None
TEST=None

Signed-off-by: Patrick Georgi <pgeorgi@chromium.org>
Reviewed-on: https://review.coreboot.org/16142
Reviewed-by: Aaron Durbin <adurbin@chromium.org>

Change-Id: Ib1793ae8fe25eecf9bd5ab8e5feef0d9380b43c2
Reviewed-on: https://chromium-review.googlesource.com/369142
Commit-Ready: Furquan Shaikh <furquan@chromium.org>
Tested-by: Furquan Shaikh <furquan@chromium.org>
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
2016-08-15 07:35:42 -07:00
Patrick Georgi
967f486b0c UPSTREAM: intel/fsp1_1: Use new per-region position override
It cooperates better with the file sorting heuristic.

BUG=None
BRANCH=None
TEST=None

Signed-off-by: Patrick Georgi <pgeorgi@chromium.org>
Reviewed-on: https://review.coreboot.org/16141
Reviewed-by: Aaron Durbin <adurbin@chromium.org>

Change-Id: I1c071243720352970dd2c4c2afed12451f91dcaa
Reviewed-on: https://chromium-review.googlesource.com/369141
Commit-Ready: Furquan Shaikh <furquan@chromium.org>
Tested-by: Furquan Shaikh <furquan@chromium.org>
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
2016-08-15 07:35:40 -07:00
Patrick Georgi
cc5b6e1c97 UPSTREAM: build system: allow overriding file position and alignment per region
To override fallback/foo's position or alignment in region BAR, use
fallback/foo-BAR-{position,align} = 0x1234

Like for the global settings, specifying both isn't allowed
because that's rather pointless.

BUG=None
BRANCH=None
TEST=None

Signed-off-by: Patrick Georgi <pgeorgi@chromium.org>
Reviewed-on: https://review.coreboot.org/16140
Reviewed-by: Aaron Durbin <adurbin@chromium.org>

Change-Id: I94f41ebc9f35108267265df4164f23b70e3d0bf6
Reviewed-on: https://chromium-review.googlesource.com/369140
Commit-Ready: Furquan Shaikh <furquan@chromium.org>
Tested-by: Furquan Shaikh <furquan@chromium.org>
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
2016-08-15 07:35:37 -07:00
Patrick Georgi
45d051302b UPSTREAM: build system: remove early stage cbfs-file sorting
They're now sorted later in the process after the per-region file lists
are determined.

BUG=None
BRANCH=None
TEST=None

Signed-off-by: Patrick Georgi <pgeorgi@chromium.org>
Reviewed-on: https://review.coreboot.org/16138
Reviewed-by: Paul Menzel <paulepanter@users.sourceforge.net>
Reviewed-by: Aaron Durbin <adurbin@chromium.org>

Change-Id: I0bba381d09dc4b99e2fe5cae16ff7ffcb5b3aa82
Reviewed-on: https://chromium-review.googlesource.com/369099
Commit-Ready: Furquan Shaikh <furquan@chromium.org>
Tested-by: Furquan Shaikh <furquan@chromium.org>
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
2016-08-15 07:35:35 -07:00
Patrick Georgi
0af51a4942 UPSTREAM: build system: order per-region files to optimize placement success
Make sure that files with a fixed position are placed first (whose order
doesn't matter: either they collide or they don't), then all aligned
files (where we just hope that the right thing happens) and finally the
files with no further requirements (again, hope).
It's still a pretty good heuristic given a typical coreboot image.

The global sorting that happens earlier in the build flow will be
removed in the future to make room for per-region requirements.

BUG=None
BRANCH=None
TEST=None

Signed-off-by: Patrick Georgi <pgeorgi@chromium.org>
Reviewed-on: https://review.coreboot.org/16137
Reviewed-by: Paul Menzel <paulepanter@users.sourceforge.net>
Reviewed-by: Aaron Durbin <adurbin@chromium.org>

Change-Id: I269c00b2ece262c95d310b76a6651c9574badb58
Reviewed-on: https://chromium-review.googlesource.com/369098
Commit-Ready: Furquan Shaikh <furquan@chromium.org>
Tested-by: Furquan Shaikh <furquan@chromium.org>
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
2016-08-15 07:35:32 -07:00
Bora Guvendik
8217b72033 UPSTREAM: intel/amenia: Add MAINBOARD_FAMILY for amenia
BUG=chrome-os-partner:51844
BRANCH=None

TEST=Boot to chrome

Signed-off-by: Bora Guvendik <bora.guvendik@intel.com>
Reviewed-on: https://review.coreboot.org/16135
Reviewed-by: Martin Roth <martinroth@google.com>

Change-Id: I66178cc75872f14941434081d9650a569a084d04
Reviewed-on: https://chromium-review.googlesource.com/369097
Commit-Ready: Furquan Shaikh <furquan@chromium.org>
Tested-by: Furquan Shaikh <furquan@chromium.org>
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
2016-08-15 07:35:30 -07:00
Bora Guvendik
4a7e240c6d UPSTREAM: intel/amenia: set default value for BOOT_MEDIA_SPI_BUS
BUG=chrome-os-partner:51844
BRANCH=None

TEST=Boot to chrome

Signed-off-by: Bora Guvendik <bora.guvendik@intel.com>
Reviewed-on: https://review.coreboot.org/16134
Reviewed-by: Martin Roth <martinroth@google.com>

Change-Id: I60d411482812d98cb8dd11d66b0fc96ea9bae895
Reviewed-on: https://chromium-review.googlesource.com/369096
Commit-Ready: Furquan Shaikh <furquan@chromium.org>
Tested-by: Furquan Shaikh <furquan@chromium.org>
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
2016-08-15 07:35:28 -07:00
Bora Guvendik
5fc0a85ef1 UPSTREAM: intel/amenia: Select UART_FOR_CONSOLE for amenia
Set default value for UART port

BUG=chrome-os-partner:51844
BRANCH=None

TEST=Boot to chrome and check console

Signed-off-by: Bora Guvendik <bora.guvendik@intel.com>
Reviewed-on: https://review.coreboot.org/16133
Reviewed-by: Martin Roth <martinroth@google.com>
Reviewed-by: Paul Menzel <paulepanter@users.sourceforge.net>

Change-Id: I5e76066e0ff531303595dcd5a99f2f8db379e89b
Reviewed-on: https://chromium-review.googlesource.com/369095
Commit-Ready: Furquan Shaikh <furquan@chromium.org>
Tested-by: Furquan Shaikh <furquan@chromium.org>
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
2016-08-15 07:35:25 -07:00
Bora Guvendik
5e6752140c UPSTREAM: intel/amenia: Update flash size to 16MB
Update flash image size to 16MB and update image layout
in flashmap descriptor file.

BUG=chrome-os-partner:51844
BRANCH=None
TEST=Boot to chrome

Signed-off-by: Bora Guvendik <bora.guvendik@intel.com>
Reviewed-on: https://review.coreboot.org/16083
Reviewed-by: Martin Roth <martinroth@google.com>

Change-Id: Ibdfb2949d06aedc38ddcef1078c2d14abcfa2dac
Reviewed-on: https://chromium-review.googlesource.com/369094
Commit-Ready: Furquan Shaikh <furquan@chromium.org>
Tested-by: Furquan Shaikh <furquan@chromium.org>
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
2016-08-15 07:35:23 -07:00
Subrata Banik
10d4d9b967 UPSTREAM: soc/intel/common: Add support for serial console based ACPI debug
This patch enables serial debug functionality for ASL code based on
UART type(legacy/LPSS).

From Skylake onwards all Intel platform uses LPSS based UART for serial
console hence provide option to redirect ASL log over LPSS UART.

Example:
Name (OBJ, 0x12)
APRT (OBJ)
APRT ("CORE BOOT")

Output:
0x12
CORE BOOT

BUG=none
BRANCH=none
TEST=Built and boot kunimitsu to ensure to be able to get ASL console log.

Signed-off-by: Subrata Banik <subrata.banik@intel.com>
Reviewed-on: https://review.coreboot.org/16070
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
Change-Id: I18c65654b8eb1ac27af1f283d413376fd79d47db
Reviewed-on: https://chromium-review.googlesource.com/369120
Commit-Ready: Furquan Shaikh <furquan@chromium.org>
Tested-by: Furquan Shaikh <furquan@chromium.org>
2016-08-14 19:50:42 -07:00
Kevin Paul Herbert
ee3973864c UPSTREAM: fsp_Broadwell_DE: Do not set IRQ3 and IRQ4 to level
When booting Linux as a coreboot payload, serial access does not work
properly. This is because the setup code erroneously sets IRQ3 and
IRQ4 to level. The UART on Broadwell is 8250/16550 compatible, thus
ISA and edge-triggered.

This change is not necessary on the non-FSP version of Broadwell support.
The non-FSP version does not set these IRQ overrides.

Fix verified booting Linux 4.6.0-rc2 on Intel Camelback Mountain CRB,
using Intel FSP 1.0.

BUG=None
BRANCH=None
TEST=None

Signed-off-by: Kevin Paul Herbert <kevin@trippers.org>
Reviewed-on: https://review.coreboot.org/16065
Reviewed-by: Patrick Georgi <pgeorgi@google.com>
Change-Id: I17b466676e7f4891c3e75ce6208e1580c9eaf742
Reviewed-on: https://chromium-review.googlesource.com/369119
Commit-Ready: Furquan Shaikh <furquan@chromium.org>
Tested-by: Furquan Shaikh <furquan@chromium.org>
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
2016-08-14 19:50:40 -07:00
Zheng Bao
beb9e58804 UPSTREAM: buildgcc: printf no-color before quiting
On some kind of terms (shell in emacs), the color-ctrl
letters don't work. The backspaces can not delete
correct number of letters. So we don't print color-ctrl
letters in loop.

BUG=None
BRANCH=None
TEST=None

Signed-off-by: Zheng Bao <fishbaozi@gmail.com>
Reviewed-on: https://review.coreboot.org/16066
Reviewed-by: Stefan Reinauer <stefan.reinauer@coreboot.org>
Reviewed-by: Martin Roth <martinroth@google.com>
Change-Id: I1f1729095e8968a9344ed9f1f278f7c78f7110e9
Reviewed-on: https://chromium-review.googlesource.com/369118
Commit-Ready: Furquan Shaikh <furquan@chromium.org>
Tested-by: Furquan Shaikh <furquan@chromium.org>
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
2016-08-14 19:50:37 -07:00
Martin Roth
2d68c6b043 UPSTREAM: rockchip/common: Set weekday to unknown in rtc_get()
Prior to this patch, time->wday was not being initialized in rtc_get(),
but was still being used by rtc_display() to print a day.

Set to -1 which gets printed as "unknown ".

Fixes coverity issue 1357459 - Uninitialized scalar variable

BUG=None
BRANCH=None
TEST=None

Signed-off-by: Martin Roth <martinroth@google.com>
Reviewed-on: https://review.coreboot.org/15899
Reviewed-by: Patrick Georgi <pgeorgi@google.com>
Reviewed-by: Paul Menzel <paulepanter@users.sourceforge.net>
Reviewed-by: Julius Werner <jwerner@chromium.org>

Change-Id: Idecb7968f854df997b58a342e1a06a879f299394
Reviewed-on: https://chromium-review.googlesource.com/369117
Commit-Ready: Furquan Shaikh <furquan@chromium.org>
Tested-by: Furquan Shaikh <furquan@chromium.org>
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
2016-08-14 19:50:35 -07:00
Lee Leahy
1fcaa4622a UPSTREAM: soc/intel/quark: Switch to using serial routines for FSP
Switch from passing FSP the serial port address to passing FSP the
serial port output routine.  This enables coreboot to use any UART in
the system and also log the FSP output.

TEST=Build and run on Galileo Gen2

BUG=None
BRANCH=None

Signed-off-by: Lee Leahy <leroy.p.leahy@intel.com>
Reviewed-on: https://review.coreboot.org/16105
Reviewed-by: Martin Roth <martinroth@google.com>
Change-Id: I67d820ea0360a3188480455dd2595be7f2debd5c
Reviewed-on: https://chromium-review.googlesource.com/369116
Commit-Ready: Furquan Shaikh <furquan@chromium.org>
Tested-by: Furquan Shaikh <furquan@chromium.org>
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
2016-08-14 19:50:33 -07:00
Lee Leahy
e4e4b72321 UPSTREAM: drivers/intel/fsp2_0: Add fsp_write_line function
Add fsp_write_line function which may be called by FSP to output debug
serial data to the console.

TEST=Build and run on Galileo Gen2

BUG=None
BRANCH=None

Signed-off-by: Lee Leahy <leroy.p.leahy@intel.com>
Reviewed-on: https://review.coreboot.org/16129
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
Change-Id: If7bfcea1af82209dcdc5a9f9f2d9334842c1595e
Reviewed-on: https://chromium-review.googlesource.com/369115
Commit-Ready: Furquan Shaikh <furquan@chromium.org>
Tested-by: Furquan Shaikh <furquan@chromium.org>
2016-08-14 19:50:30 -07:00
Lee Leahy
7fbeb72275 UPSTREAM: drivers/intel/fsp1_1: Add fsp_write_line function
Add fsp_write_line function which may be called by FSP to output debug
serial data to the console.

TEST=Build and run on Galileo Gen2

BUG=None
BRANCH=None

Signed-off-by: Lee Leahy <leroy.p.leahy@intel.com>
Reviewed-on: https://review.coreboot.org/16128
Reviewed-by: Martin Roth <martinroth@google.com>
Change-Id: Ib01aef448798e47ac613b38eb20bf25537b9221f
Reviewed-on: https://chromium-review.googlesource.com/369114
Commit-Ready: Furquan Shaikh <furquan@chromium.org>
Tested-by: Furquan Shaikh <furquan@chromium.org>
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
2016-08-14 19:50:28 -07:00
Lee Leahy
05228e4627 UPSTREAM: console: Add write line routine
Add write line routine which is called indirectly by FSP.

TEST=Build and run on Galileo Gen2.

BUG=None
BRANCH=None

Signed-off-by: Lee Leahy <leroy.p.leahy@intel.com>
Reviewed-on: https://review.coreboot.org/16127
Reviewed-by: Martin Roth <martinroth@google.com>
Change-Id: Idefb6e9ebe5a2b614055dabddc1882bfa3bba673
Reviewed-on: https://chromium-review.googlesource.com/369113
Commit-Ready: Furquan Shaikh <furquan@chromium.org>
Tested-by: Furquan Shaikh <furquan@chromium.org>
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
2016-08-14 19:50:25 -07:00
Patrick Georgi
b06510b56b UPSTREAM: build system: change addition order of files to go by region
Instead of adding each file in all requested regions, sort by region,
then by file.

This is in preparation of per-region file options
(eg. position, alignment)

BUG=None
BRANCH=None
TEST=None

Signed-off-by: Patrick Georgi <pgeorgi@chromium.org>
Reviewed-on: https://review.coreboot.org/16130
Reviewed-by: Paul Menzel <paulepanter@users.sourceforge.net>
Reviewed-by: Martin Roth <martinroth@google.com>
Change-Id: Ide09a1c8840279380294a059bbd5d2f9f0cba780
Reviewed-on: https://chromium-review.googlesource.com/369112
Commit-Ready: Furquan Shaikh <furquan@chromium.org>
Tested-by: Furquan Shaikh <furquan@chromium.org>
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
2016-08-14 19:50:23 -07:00
Jonathan Neuschäfer
2ba4d71d28 UPSTREAM: util/cbfstool: Initialize elf_writer pointer to avoid crash
If some error happens in cbfs_payload_make_elf, the code jumps to "out",
and elf_writer_destroy(ew) is called. This may happen before an elf
writer is allocated.
To avoid accessing an uninitialized pointer, initialize ew to NULL;
elf_writer_destroy will perform no action in this case.

BUG=None
BRANCH=None
TEST=None

Signed-off-by: Jonathan Neuschfer <j.neuschaefer@gmx.net>
Reviewed-on: https://review.coreboot.org/16124
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
Change-Id: I5f1f9c4d37f2bdeaaeeca7a15720c7b4c963d953
Reviewed-on: https://chromium-review.googlesource.com/369111
Commit-Ready: Furquan Shaikh <furquan@chromium.org>
Tested-by: Furquan Shaikh <furquan@chromium.org>
2016-08-14 19:50:21 -07:00