Commit graph

18621 commits

Author SHA1 Message Date
Antonello Dettori
80cff5959e UPSTREAM: northbridge/intel/i945: transition away from device_t
Replace the use of the old device_t definition inside
northbridge/intel/i945.

The patch has been tested both with the arch/io.h definition of
device_t enabled and disabled in order to ensure compatibility
while the transaction takes place.

BUG=None
BRANCH=None
TEST=None

Signed-off-by: Antonello Dettori <dev@dettori.io>
Reviewed-on: https://review.coreboot.org/16371
Tested-by: build bot (Jenkins)
Reviewed-by: Aaron Durbin <adurbin@chromium.org>

Change-Id: I041c150a7b50261e26955ad9287ef05b9a06e412
Reviewed-on: https://chromium-review.googlesource.com/381666
Commit-Ready: Furquan Shaikh <furquan@chromium.org>
Tested-by: Furquan Shaikh <furquan@chromium.org>
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
2016-09-07 00:16:40 -07:00
Antonello Dettori
e7b79368cc UPSTREAM: device/pci.h: change #ifdef argument to __SIMPLE_DEVICE__
Change the argument to #ifdef from __PRE_RAM__ to __SIMPLE_DEVICE__
in order to account for the coreboot stages that do not define device_t
and are not __PRE_RAM__ (i.e. smm) device_t

BUG=None
BRANCH=None
TEST=None

Signed-off-by: Antonello Dettori <dev@dettori.io>
Reviewed-on: https://review.coreboot.org/16369
Tested-by: build bot (Jenkins)
Reviewed-by: Aaron Durbin <adurbin@chromium.org>

Change-Id: Ic6e9b504803622b60b5217c9432ce57caefc5065
Reviewed-on: https://chromium-review.googlesource.com/381665
Commit-Ready: Furquan Shaikh <furquan@chromium.org>
Tested-by: Furquan Shaikh <furquan@chromium.org>
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
2016-09-07 00:16:38 -07:00
Antonello Dettori
bfb1a2ab3b UPSTREAM: northbridge/intel/sandybridge: transition away from device_t
Replace the use of the old device_t definition inside
northbridge/intel/sandybridge.

The patch has been tested both with the arch/io.h definition of device_t
enabled and disabled in order to ensure compatibility while the
transaction takes place.

BUG=None
BRANCH=None
TEST=None

Signed-off-by: Antonello Dettori <dev@dettori.io>
Reviewed-on: https://review.coreboot.org/16409
Tested-by: build bot (Jenkins)
Reviewed-by: Martin Roth <martinroth@google.com>

Change-Id: I35cc76ec7b6baa216666d06f6f325f43ac69067e
Reviewed-on: https://chromium-review.googlesource.com/381664
Commit-Ready: Furquan Shaikh <furquan@chromium.org>
Tested-by: Furquan Shaikh <furquan@chromium.org>
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
2016-09-07 00:16:35 -07:00
Antonello Dettori
4b87f29a54 UPSTREAM: arch/acpi.h: add #if guard to handle the absence of device_t type
Avoid the inclusion of a function declaration if the argument type
device_t is not defined.

This was not a problem until now because the
old declaration of device_t and the new one overlapped.

BUG=None
BRANCH=None
TEST=None

Signed-off-by: Antonello Dettori <dev@dettori.io>
Reviewed-on: https://review.coreboot.org/16404
Tested-by: build bot (Jenkins)
Reviewed-by: Martin Roth <martinroth@google.com>

Change-Id: I05a6ef1bf65bf47f3c6933073ae2d26992348813
Reviewed-on: https://chromium-review.googlesource.com/381663
Commit-Ready: Furquan Shaikh <furquan@chromium.org>
Tested-by: Furquan Shaikh <furquan@chromium.org>
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
2016-09-07 00:16:33 -07:00
Antonello Dettori
d997c454e0 UPSTREAM: southbridge/intel/bd82x6x: transition away from device_t
Replace the use of the old device_t definition inside
southbridge/intel/bd82x6x.

The patch has been tested both with the arch/io.h definition of device_t
enabled and disabled in order to ensure compatibility while the
transaction takes place.

BUG=None
BRANCH=None
TEST=None

Signed-off-by: Antonello Dettori <dev@dettori.io>
Reviewed-on: https://review.coreboot.org/16407
Tested-by: build bot (Jenkins)
Reviewed-by: Martin Roth <martinroth@google.com>

Change-Id: I7166bfab7904f80b745855d3bbcfb910cbc89f56
Reviewed-on: https://chromium-review.googlesource.com/381662
Commit-Ready: Furquan Shaikh <furquan@chromium.org>
Tested-by: Furquan Shaikh <furquan@chromium.org>
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
2016-09-07 00:16:31 -07:00
Duncan Laurie
cd8d7ccae9 UPSTREAM: google/reef: Fix indent in devicetree.cb
Indent the I2C device for touchscreen with tabs so it
aligns properly.

BUG=None
BRANCH=None
TEST=None

Signed-off-by: Duncan Laurie <dlaurie@chromium.org>
Reviewed-on: https://review.coreboot.org/16399
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
Reviewed-by: Paul Menzel <paulepanter@users.sourceforge.net>
Tested-by: build bot (Jenkins)

Change-Id: Id9b2d26a4acdd6fe6c69055907258df3cc035b31
Reviewed-on: https://chromium-review.googlesource.com/381661
Commit-Ready: Furquan Shaikh <furquan@chromium.org>
Tested-by: Furquan Shaikh <furquan@chromium.org>
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
2016-09-07 00:16:28 -07:00
Aaron Durbin
feb3d93144 UPSTREAM: mainboard/google/reef: provide baseboard and variant concepts
To further the ability of multiple variant boards to share code
provide a place to land the split up changes. This patch provides
the tooling using a new Kconfig value, VARIANT_DIR, as well as
the Make plumbing. The directory layout with a single variant,
reef (which is also the baseboard), looks like this:

variants/baseboard - code
variants/baseboard/include/baseboard - headers
variants/reef - code
variants/reef/include/variant - headers

New boards would then add themselves under their board name
within the 'variants' directory.

No split has been done with providing different logic yet.
This is purely a organizational change.

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

Signed-off-by: Aaron Durbin <adurbin@chromium.org>
Reviewed-on: https://review.coreboot.org/16418
Tested-by: build bot (Jenkins)
Reviewed-by: Duncan Laurie <dlaurie@chromium.org>

Change-Id: Ib73a3c8a3729546257623171ef6d8fa7a9f16514
Reviewed-on: https://chromium-review.googlesource.com/381660
Commit-Ready: Furquan Shaikh <furquan@chromium.org>
Tested-by: Furquan Shaikh <furquan@chromium.org>
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
2016-09-07 00:16:26 -07:00
Aaron Durbin
8dd94a201d UPSTREAM: mainboard/google/reef: prepare sharing directory for variants
Instead of completely duplicating the a reference board's directory
when doing a variant or follower device start providing a means to
share code within a single directory. This change just starts the
process from the Kconfig side, but subsequent patches will follow
which disentangles the board specific pieces from and common
logic.

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

Signed-off-by: Aaron Durbin <adurbin@chromium.org>
Reviewed-on: https://review.coreboot.org/16417
Tested-by: build bot (Jenkins)
Reviewed-by: Duncan Laurie <dlaurie@chromium.org>

Change-Id: I96628920d78012e488ec008e35daac9c1be0cf79
Reviewed-on: https://chromium-review.googlesource.com/381659
Commit-Ready: Furquan Shaikh <furquan@chromium.org>
Tested-by: Furquan Shaikh <furquan@chromium.org>
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
2016-09-07 00:16:24 -07:00
Aaron Durbin
c57861f4ab UPSTREAM: mainboard/google/reef: correct EC ASL includes
The superio.asl wasn't being included within the right scope.
Fix that as well as clean up the per-mainboard header includes
to be in one place.

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

Signed-off-by: Aaron Durbin <adurbin@chromium.org>
Reviewed-on: https://review.coreboot.org/16413
Tested-by: build bot (Jenkins)
Reviewed-by: Duncan Laurie <dlaurie@chromium.org>
Reviewed-by: Shaunak Saha <shaunak.saha@intel.com>

Change-Id: I5e6a82f9f2e3c7455132263d19b32b2f06220376
Reviewed-on: https://chromium-review.googlesource.com/381658
Commit-Ready: Furquan Shaikh <furquan@chromium.org>
Tested-by: Furquan Shaikh <furquan@chromium.org>
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
2016-09-07 00:16:22 -07:00
Aaron Durbin
619ef5e72a UPSTREAM: mainboard/google/reef: remove unused gpio.h macros
Some of the macros in gpio.h are no longer used because
devicetree.cb is being used to autogeneric the ACPI AML.
Therefore remove the unused macros.

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

Signed-off-by: Aaron Durbin <adurbin@chromium.org>
Reviewed-on: https://review.coreboot.org/16412
Tested-by: build bot (Jenkins)
Reviewed-by: Sathyanarayana Nujella <sathyanarayana.nujella@intel.com>
Reviewed-by: Duncan Laurie <dlaurie@chromium.org>

Change-Id: I433a929229a0318f6c1df652655d046a5152cc63
Reviewed-on: https://chromium-review.googlesource.com/381657
Commit-Ready: Furquan Shaikh <furquan@chromium.org>
Tested-by: Furquan Shaikh <furquan@chromium.org>
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
2016-09-07 00:16:19 -07:00
Iru Cai
1f65fd5340 UPSTREAM: Makefile.inc: Use $(MAINBOARDDIR)
Commit 93ef3ff makes the following only print the part number when
the ROM is built. In Makefile.inc, $(MAINBOARDDIR) is the variable
that has the quotes stripped off from $(CONFIG_MAINBOARD_DIR), so
use it instead of $(MAINBOARD_DIR).

build_complete:: coreboot
        printf "\nBuilt %s (%s)\n" $(MAINBOARD_DIR) \
                $(CONFIG_MAINBOARD_PART_NUMBER)

BUG=None
BRANCH=None
TEST=None

Signed-off-by: Iru Cai <mytbk920423@gmail.com>
Reviewed-on: https://review.coreboot.org/16410
Tested-by: build bot (Jenkins)
Reviewed-by: Martin Roth <martinroth@google.com>

Change-Id: I729a583182937db7a926eb75aa28dfb53360046c
Reviewed-on: https://chromium-review.googlesource.com/381656
Commit-Ready: Furquan Shaikh <furquan@chromium.org>
Tested-by: Furquan Shaikh <furquan@chromium.org>
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
2016-09-07 00:16:17 -07:00
Elyes HAOUAS
98ff4e762b UPSTREAM: src/cpu: Improve code formatting
BUG=None
BRANCH=None
TEST=None

Signed-off-by: Elyes HAOUAS <ehaouas@noos.fr>
Reviewed-on: https://review.coreboot.org/16391
Tested-by: build bot (Jenkins)
Reviewed-by: Andrew Wu <arw@dmp.com.tw>
Reviewed-by: Antonello Dettori <dev@dettori.io>

Change-Id: I17d5efe382da5301a9f5d595186d0fb7576725ca
Reviewed-on: https://chromium-review.googlesource.com/381655
Commit-Ready: Furquan Shaikh <furquan@chromium.org>
Tested-by: Furquan Shaikh <furquan@chromium.org>
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
2016-09-07 00:16:15 -07:00
Duncan Laurie
63e438f86c UPSTREAM: lpss_i2c: Increase default timeout to 4ms
Increase the default timeout in the LPSS I2C driver to 4ms
from 2ms.  During testing with some slower devices I found
that the existing timeout could be too short leading to
transaction failures.

BUG=None
BRANCH=None
TEST=None

Signed-off-by: Duncan Laurie <dlaurie@chromium.org>
Reviewed-on: https://review.coreboot.org/16392
Reviewed-by: Furquan Shaikh <furquan@google.com>
Tested-by: build bot (Jenkins)
Reviewed-by: Paul Menzel <paulepanter@users.sourceforge.net>

Change-Id: Ied86c7a0aa26d55b31f447c5938803c194d0045e
Reviewed-on: https://chromium-review.googlesource.com/381654
Commit-Ready: Furquan Shaikh <furquan@chromium.org>
Tested-by: Furquan Shaikh <furquan@chromium.org>
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
2016-09-07 00:16:12 -07:00
Julius Werner
bd7aa7ec3e rockchip/rk3399: Move big CPU cluster initialization into ramstage
This patch moves the big CPU cluster initialization on the RK3399 from
the clock init bootblock function into ramstage. We're only really doing
this to put the cluster into a sane state for the OS, we're never
actually taking it out of reset ourselves... so there's no reason to do
this so early.

Also cleaned up the interface for rkclk_configure_cpu() a bit to make it
more readable.

BRANCH=None
BUG=chrome-os-partner:54906
TEST=Booted Kevin.

Change-Id: Ic3d01a51531683b53e17addf1942441663a8ea40
Signed-off-by: Julius Werner <jwerner@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/377541
Reviewed-by: Douglas Anderson <dianders@chromium.org>
2016-09-07 05:47:59 +00:00
Stefan Reinauer
74d9989a86 UPSTREAM: Update .checkpatch.conf
- Don't require a description of every config statement in the
Kconfig changes
- Don't complain about externs in .c files
- Don't complain about the use of the volatile keyword.  The kernel
may not want it, but we definitely need it.
- Disable checks that seem to be broken.

BUG=None
BRANCH=None
TEST=None

Signed-off-by: Stefan Reinauer <stefan.reinauer@coreboot.org>
Signed-off-by: Martin Roth <martinroth@google.com>
Reviewed-on: https://review.coreboot.org/16010
Tested-by: build bot (Jenkins)
Reviewed-by: Alexander Couzens <lynxis@fe80.eu>

Change-Id: Ic419b81cd36852a91e887e610d4a04984ab5fbd7
Reviewed-on: https://chromium-review.googlesource.com/381010
Commit-Ready: Furquan Shaikh <furquan@chromium.org>
Tested-by: Furquan Shaikh <furquan@chromium.org>
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
2016-09-06 13:26:39 -07:00
Martin Roth
485528de50 UPSTREAM: .gitignore: Add coreinfo build residue, defconfig
BUG=None
BRANCH=None
TEST=None

Signed-off-by: Martin Roth <martinroth@google.com>
Reviewed-on: https://review.coreboot.org/16389
Tested-by: build bot (Jenkins)
Reviewed-by: Paul Menzel <paulepanter@users.sourceforge.net>
Reviewed-by: Omar Pakker

Change-Id: I387603aff6efd6da5e9d78f204d94c064a99e1d1
Reviewed-on: https://chromium-review.googlesource.com/381009
Commit-Ready: Furquan Shaikh <furquan@chromium.org>
Tested-by: Furquan Shaikh <furquan@chromium.org>
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
2016-09-06 13:26:36 -07:00
Brandon Breitenstein
0b7f256c04 UPSTREAM: apollolake: relocate fsp header files to vendorcode
FSP header files should be located in vendorcode, not soc directory.
This patch includes changes any references to the old location to
the new location.

BUG=None
BRANCH=None
TEST=None

Signed-off-by: Brandon Breitenstein <brandon.breitenstein@intel.com>
Reviewed-on: https://review.coreboot.org/16310
Tested-by: build bot (Jenkins)
Reviewed-by: Aaron Durbin <adurbin@chromium.org>

Change-Id: I44270392617418ec1b9dec15ee187863f2503341
Reviewed-on: https://chromium-review.googlesource.com/381008
Commit-Ready: Furquan Shaikh <furquan@chromium.org>
Tested-by: Furquan Shaikh <furquan@chromium.org>
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
2016-09-06 13:26:34 -07:00
Brandon Breitenstein
b9029486e5 UPSTREAM: drivers/intel/fsp2_0: Make FSP Headers Consumable out of Box
The following patch is based off of the UEFI 2.6 patch. The FSP header files
are temporarily staying in soc/intel/apollolake and FspUpd.h has been relocated
since the other headers expect it to be in the root of an includable directory.
Any struct defines were removed since they are defined in the headers and no
longer need to be explicity declared as struct with the UEFI 2.6 includes.

BUG=chrome-os-partner:54100
BRANCH=none
TEST=confirmed coreboot builds successfully

Signed-off-by: Brandon Breitenstein <brandon.breitenstein@intel.com>#
Signed-off-by: Andrey Petrov <andrey.petrov@intel.com>
Reviewed-on: https://review.coreboot.org/16308
Tested-by: build bot (Jenkins)
Reviewed-by: Aaron Durbin <adurbin@chromium.org>

Change-Id: I10739dca1b6da3f15bd850adf06238f7c51508f7
Reviewed-on: https://chromium-review.googlesource.com/381007
Commit-Ready: Furquan Shaikh <furquan@chromium.org>
Tested-by: Furquan Shaikh <furquan@chromium.org>
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
2016-09-06 13:26:32 -07:00
Rizwan Qureshi
973656b83b UPSTREAM: vendorcode/intel: Add UDK 2015 Bindings
Add UDK 2015 Bindings for FSP header compatibility.
These bindings add the necessary code to read FSP Headers
without any modifications from FSP Source.

BUG=chrome-os-partner:54100
BRANCH=none
TEST=built coreboot image and verified boot

Signed-off-by: Rizwan Qureshi <rizwan.qureshi@intel.com>
Reviewed-on: https://review.coreboot.org/16307
Tested-by: build bot (Jenkins)
Reviewed-by: Aaron Durbin <adurbin@chromium.org>

Change-Id: I2887f55b6e63cd0a2b2add9a521be9cfaf875e7d
Reviewed-on: https://chromium-review.googlesource.com/381006
Commit-Ready: Furquan Shaikh <furquan@chromium.org>
Tested-by: Furquan Shaikh <furquan@chromium.org>
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
2016-09-06 13:26:29 -07:00
Brandon Breitenstein
6ffaac1d11 UPSTREAM: commonlib: update fsp_relocate to make it compatible with UEFI 2.6
UEFI 2.6 spec casts the return of FFS_FILE2_SIZE to a UINT32
which cannot be read using read_le32(&returnval). Add in a
cast in order to safeguard for any non x86 architecture that may
use this relocate. The proper change will be to get the UEFI
header files changed to not cast this return value.

BUG=None
BRANCH=None
TEST=None

Signed-off-by: Brandon Breitenstein <brandon.breitenstein@intel.com>
Reviewed-on: https://review.coreboot.org/16309
Tested-by: build bot (Jenkins)
Reviewed-by: Aaron Durbin <adurbin@chromium.org>

Change-Id: Ie1b50d99576ac42a0413204bbd599bab9f01828e
Reviewed-on: https://chromium-review.googlesource.com/381005
Commit-Ready: Furquan Shaikh <furquan@chromium.org>
Tested-by: Furquan Shaikh <furquan@chromium.org>
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
2016-09-06 13:26:27 -07:00
Antonello Dettori
c355c66347 UPSTREAM: lenovo/x60: transition away from device_t
Replace the use of the old device_t definition inside
mainboard/lenovo/x60.

The patch has been tested both with the arch/io.h definition of device_t
enabled and disabled in order to ensure compatibility while the
transaction takes place.

BUG=None
BRANCH=None
TEST=None

Signed-off-by: Antonello Dettori <dev@dettori.io>
Reviewed-on: https://review.coreboot.org/16372
Tested-by: build bot (Jenkins)
Reviewed-by: Paul Menzel <paulepanter@users.sourceforge.net>
Reviewed-by: Aaron Durbin <adurbin@chromium.org>

Change-Id: Icaceeae2fc7276efa82d37582ecac93aaf37c41c
Reviewed-on: https://chromium-review.googlesource.com/381004
Commit-Ready: Furquan Shaikh <furquan@chromium.org>
Tested-by: Furquan Shaikh <furquan@chromium.org>
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
2016-09-06 13:26:25 -07:00
Martin Roth
fc697f6e03 UPSTREAM: southbridge/amd/cs553x: Fix whitespace early_setup.c
Commit ba28e8d7 (src/southbridge: Code formating) incorrectly inserted
some whitespace in these files.

BUG=None
BRANCH=None
TEST=None

Signed-off-by: Martin Roth <martinroth@google.com>
Reviewed-on: https://review.coreboot.org/16385
Tested-by: build bot (Jenkins)
Reviewed-by: HAOUAS Elyes <ehaouas@noos.fr>
Reviewed-by: Paul Menzel <paulepanter@users.sourceforge.net>

Change-Id: Ifdcc3580aaba224a396c6efec319e22610c6c81d
Reviewed-on: https://chromium-review.googlesource.com/381003
Commit-Ready: Furquan Shaikh <furquan@chromium.org>
Tested-by: Furquan Shaikh <furquan@chromium.org>
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
2016-09-06 13:26:23 -07:00
Arthur Heymans
889a28055a UPSTREAM: lenovo/x200,t400: use gpio.h instead of gpio_setup
Uses gpio.h instead of default_southbridge_gpio_setup to configure
southbridge GPIO's. This is more consistent with how GPIO's are
configured on newer targets.

BUG=None
BRANCH=None
TEST=None

Signed-off-by: Arthur Heymans <arthur@aheymans.xyz>
Reviewed-on: https://review.coreboot.org/16379
Tested-by: build bot (Jenkins)
Reviewed-by: Aaron Durbin <adurbin@chromium.org>

Change-Id: I6ccd0564b929e958864739b7cde04f5592c58479
Reviewed-on: https://chromium-review.googlesource.com/381002
Commit-Ready: Furquan Shaikh <furquan@chromium.org>
Tested-by: Furquan Shaikh <furquan@chromium.org>
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
2016-09-06 13:26:20 -07:00
zbao
0fe5e40a8d UPSTREAM: buildgcc: Search the cksum command without checking OS type
The checksum command might appear to be unpredictable only by
checking the OS. Just list the candidates, sorted by possibility.

BUG=None
BRANCH=None
TEST=None

Signed-off-by: Zheng Bao <zheng.bao@amd.com>
Signed-off-by: Zheng Bao <fishbaozi@gmail.com>
Reviewed-on: https://review.coreboot.org/11483
Tested-by: build bot (Jenkins)
Reviewed-by: Martin Roth <martinroth@google.com>

Change-Id: Ia3f4f5f0f98ff47d322a4f70689cca0bd4fa79fa
Reviewed-on: https://chromium-review.googlesource.com/381001
Commit-Ready: Furquan Shaikh <furquan@chromium.org>
Tested-by: Furquan Shaikh <furquan@chromium.org>
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
2016-09-06 13:26:18 -07:00
Martin Roth
62872cc047 UPSTREAM: Fix newlines at the end of files
All but ga-g41m-es2l/cmos.default had multiple final newlines.
ga-g41m-es2l/cmos.default had no final newline.

BUG=None
BRANCH=None
TEST=None

Change-Id: Id350b513d5833bb14a2564eb789ab23b6278dcb5
Signed-off-by: Martin Roth <martinroth@google.com>
Reviewed-on: https://review.coreboot.org/16361
Reviewed-by: Paul Menzel <paulepanter@users.sourceforge.net>
Tested-by: build bot (Jenkins)
Reviewed-by: Antonello Dettori <dev@dettori.io>
Reviewed-on: https://chromium-review.googlesource.com/381000
Commit-Ready: Furquan Shaikh <furquan@chromium.org>
Tested-by: Furquan Shaikh <furquan@chromium.org>
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
2016-09-06 13:26:16 -07:00
Furquan Shaikh
e2b5c13a28 UPSTREAM: soc/intel/apollolake: Use consistent convention for community names
Instead of using a mix of _N and _NORTH, _NW and _NORTHWEST for GPIO
community names, follow one single convention. This allows for re-using
macros easily.

BUG=None
BRANCH=None
TEST=None

Signed-off-by: Furquan Shaikh <furquan@google.com>
Reviewed-on: https://review.coreboot.org/16353
Reviewed-by: Lijian Zhao <lijian.zhao@intel.com>
Tested-by: build bot (Jenkins)
Reviewed-by: Paul Menzel <paulepanter@users.sourceforge.net>
Reviewed-by: Aaron Durbin <adurbin@chromium.org>

Change-Id: Icd9cf9ef70d03576d864688cf5d6946124c259c3
Reviewed-on: https://chromium-review.googlesource.com/380999
Commit-Ready: Furquan Shaikh <furquan@chromium.org>
Tested-by: Furquan Shaikh <furquan@chromium.org>
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
2016-09-06 13:26:14 -07:00
Antonello Dettori
33c6d37627 UPSTREAM: nvramcui: remove undeclared variable
Remove an undeclared variable that was accidentally left over,
nvramcui is currently unable to compile and operate because of this.

Regression introduced in: 904dd303cb
(nvramcui: refactor code)

Fixes: https://ticket.coreboot.org/issues/70

BUG=None
BRANCH=None
TEST=None

Signed-off-by: Antonello Dettori <dev@dettori.io>
Reviewed-on: https://review.coreboot.org/16333
Tested-by: build bot (Jenkins)
Reviewed-by: Paul Menzel <paulepanter@users.sourceforge.net>
Reviewed-by: Martin Roth <martinroth@google.com>

Change-Id: Ieaba615838d7593546ab5696baf1b8f9828da345
Reviewed-on: https://chromium-review.googlesource.com/380998
Commit-Ready: Furquan Shaikh <furquan@chromium.org>
Tested-by: Furquan Shaikh <furquan@chromium.org>
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
2016-09-06 13:26:11 -07:00
Simon Glass
2381e02efa selfboot: Move the usable-RAM check into a function
In preparation for making this check optional, move it into its own
function. load_self_segments() is already long and we don't want to make
it longer.

BUG=chrome-os-partner:56314
BRANCH=none
TEST=boot on gru and see that BL31 loads and runs correctly

Change-Id: I005e5e4d9b2136605bdd95e9060655df7a8238cb
Signed-off-by: Simon Glass <sjg@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/381092
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
2016-09-05 19:26:52 -07:00
Aaron Durbin
efeecddea2 UPSTREAM: mainboard/google/reef: drop proto gpio support
Many changes make proto boards very hard to work with since
proto boards were using A stepping processors. Everyone has
moved on. Therefore, drop non-proto support.

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

Signed-off-by: Aaron Durbin <adurbin@chromium.org>
Reviewed-on: https://review.coreboot.org/16377
Reviewed-by: Duncan Laurie <dlaurie@chromium.org>
Tested-by: build bot (Jenkins)

Change-Id: I2985e3965b1b69445e22506bd664b4cbca13c8ab
Reviewed-on: https://chromium-review.googlesource.com/380997
Commit-Ready: Furquan Shaikh <furquan@chromium.org>
Tested-by: Furquan Shaikh <furquan@chromium.org>
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
2016-09-04 23:28:48 -07:00
Aaron Durbin
73d4906b3d UPSTREAM: mainboard/google/reef: add pen connections
A pen interface was added. Prepare for possibly testing it by
plumbing in the gpio configuration. It's very possible these
changes need to be tweaked, but no driver code has been seen
yet nor a datasheet detailing how some of these signals actually
function.

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

Signed-off-by: Aaron Durbin <adurbin@chromium.org>
Reviewed-on: https://review.coreboot.org/16376
Tested-by: build bot (Jenkins)
Reviewed-by: Duncan Laurie <dlaurie@chromium.org>
Reviewed-by: Paul Menzel <paulepanter@users.sourceforge.net>

Change-Id: I208ff3e151ce55d62e5fcc33a1e39cc87e229970
Reviewed-on: https://chromium-review.googlesource.com/380996
Commit-Ready: Furquan Shaikh <furquan@chromium.org>
Tested-by: Furquan Shaikh <furquan@chromium.org>
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
2016-09-04 23:28:46 -07:00
Aaron Durbin
0ebead48a1 UPSTREAM: mainboard/google/reef: fix polarity of FP_INT
The formerly name FP_INT_L net is actually active high and is push-pull.
Therefore adjust for the new net name, FP_INT, and polarity. The
pulldowns are there because the device is on another board that isn't
always available.

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

Signed-off-by: Aaron Durbin <adurbin@chromium.org>
Reviewed-on: https://review.coreboot.org/16375
Tested-by: build bot (Jenkins)
Reviewed-by: Duncan Laurie <dlaurie@chromium.org>
Reviewed-by: Furquan Shaikh <furquan@google.com>
Reviewed-by: Paul Menzel <paulepanter@users.sourceforge.net>

Change-Id: I6706fd2c2bd164cf3b5f1457aef69f5675f2112d
Reviewed-on: https://chromium-review.googlesource.com/380995
Commit-Ready: Furquan Shaikh <furquan@chromium.org>
Tested-by: Furquan Shaikh <furquan@chromium.org>
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
2016-09-04 23:28:43 -07:00
Aaron Durbin
8d755aa321 UPSTREAM: mainboard/google/reef: add new memory SKUs
Two new SKUs are being utilized for reef DVT. Add the following:
Hynix 8GiB using H9HCNNNBPUMLHR-NLE -- id: 4'b0100
Hynix 4GIB using H9HCNNN8KUMLHR-NLE -- id: 4'b0101

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

Signed-off-by: Aaron Durbin <adurbin@chromium.org>
Reviewed-on: https://review.coreboot.org/16374
Tested-by: build bot (Jenkins)
Reviewed-by: Duncan Laurie <dlaurie@chromium.org>
Reviewed-by: Furquan Shaikh <furquan@google.com>
Reviewed-by: Paul Menzel <paulepanter@users.sourceforge.net>

Change-Id: I39ed9e827501939b92cbcce6092302b5a23d1d78
Reviewed-on: https://chromium-review.googlesource.com/380994
Commit-Ready: Furquan Shaikh <furquan@chromium.org>
Tested-by: Furquan Shaikh <furquan@chromium.org>
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
2016-09-04 23:28:41 -07:00
Aaron Durbin
77a269cf91 UPSTREAM: mainboard/google/reef: support WLAN_PE_RST
The reef DVT build added another way to assert the wifi module's
reset line. Ensure it's deasserted by default. For previous boards
this GPIO doesn't matter because it wasn't routed anyway.

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

Signed-off-by: Aaron Durbin <adurbin@chromium.org>
Reviewed-on: https://review.coreboot.org/16373
Reviewed-by: Furquan Shaikh <furquan@google.com>
Tested-by: build bot (Jenkins)
Reviewed-by: Duncan Laurie <dlaurie@chromium.org>
Reviewed-by: Paul Menzel <paulepanter@users.sourceforge.net>

Change-Id: I63e97b091ca0a278682c883303b1d7e052d8e677
Reviewed-on: https://chromium-review.googlesource.com/380993
Commit-Ready: Furquan Shaikh <furquan@chromium.org>
Tested-by: Furquan Shaikh <furquan@chromium.org>
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
2016-09-04 23:28:39 -07:00
Martin Roth
26a4b43f29 UPSTREAM: amd/sb700/bootblock.c: Restore accidentally deleted code
The recent changes to this file from commit 6e5421d2
(sb/amd/sb700: Add option to increase SPI speed to 33MHz)
were accidentally removed in a code cleanup patch:
commit ba28e8d7 (src/southbridge: Code formating).

BUG=None
BRANCH=None
TEST=None

Signed-off-by: Martin Roth <martinroth@google.com>
Reviewed-on: https://review.coreboot.org/16384
Reviewed-by: Timothy Pearson <tpearson@raptorengineering.com>
Tested-by: build bot (Jenkins)

Change-Id: I6cf3e8f29d5c0384d35637f35e051be40318d20f
Reviewed-on: https://chromium-review.googlesource.com/380992
Commit-Ready: Furquan Shaikh <furquan@chromium.org>
Tested-by: Furquan Shaikh <furquan@chromium.org>
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
2016-09-04 23:28:37 -07:00
Elyes HAOUAS
58647909d1 UPSTREAM: northbridge/intel: Add required space before opening parenthesis '('
BUG=None
BRANCH=None
TEST=None

Signed-off-by: Elyes HAOUAS <ehaouas@noos.fr>
Reviewed-on: https://review.coreboot.org/16304
Tested-by: build bot (Jenkins)
Reviewed-by: Martin Roth <martinroth@google.com>

Change-Id: I53208ce5db06d2c65f954e6d59222924ab87722e
Reviewed-on: https://chromium-review.googlesource.com/380991
Commit-Ready: Furquan Shaikh <furquan@chromium.org>
Tested-by: Furquan Shaikh <furquan@chromium.org>
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
2016-09-04 23:28:34 -07:00
Elyes HAOUAS
59bb2c9aff UPSTREAM: northbridge/amd: Add required space before opening parenthesis '('
BUG=None
BRANCH=None
TEST=None

Signed-off-by: Elyes HAOUAS <ehaouas@noos.fr>
Reviewed-on: https://review.coreboot.org/16305
Tested-by: build bot (Jenkins)
Reviewed-by: Martin Roth <martinroth@google.com>

Change-Id: Ic85f725bbdf72fbac5a4d9482c61343c5eb35e25
Reviewed-on: https://chromium-review.googlesource.com/380990
Commit-Ready: Furquan Shaikh <furquan@chromium.org>
Tested-by: Furquan Shaikh <furquan@chromium.org>
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
2016-09-04 23:28:32 -07:00
Elyes HAOUAS
411dc554cf UPSTREAM: src/ec: Add required space before opening parenthesis '('
BUG=None
BRANCH=None
TEST=None

Signed-off-by: Elyes HAOUAS <ehaouas@noos.fr>
Reviewed-on: https://review.coreboot.org/16322
Tested-by: build bot (Jenkins)
Reviewed-by: Martin Roth <martinroth@google.com>

Change-Id: I013f71b702644ab337c3d76be1489530bad6e6cc
Reviewed-on: https://chromium-review.googlesource.com/380989
Commit-Ready: Furquan Shaikh <furquan@chromium.org>
Tested-by: Furquan Shaikh <furquan@chromium.org>
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
2016-09-04 23:28:29 -07:00
Elyes HAOUAS
1bbd393a3b UPSTREAM: soc/broadcom/cygnus/ddr_init.c: Correct typo in POWER ON and POWER OK.
BUG=None
BRANCH=None
TEST=None

Signed-off-by: Elyes HAOUAS <ehaouas@noos.fr>
Reviewed-on: https://review.coreboot.org/16343
Reviewed-by: Paul Menzel <paulepanter@users.sourceforge.net>
Reviewed-by: Martin Roth <martinroth@google.com>
Tested-by: build bot (Jenkins)

Change-Id: I5b69a8429eb2f7add08bc134d5d2366a1afe6a4f
Reviewed-on: https://chromium-review.googlesource.com/380988
Commit-Ready: Furquan Shaikh <furquan@chromium.org>
Tested-by: Furquan Shaikh <furquan@chromium.org>
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
2016-09-04 23:28:27 -07:00
Elyes HAOUAS
cf9d15f5a0 UPSTREAM: src/southbridge: Code formating
BUG=None
BRANCH=None
TEST=None

Signed-off-by: Elyes HAOUAS <ehaouas@noos.fr>
Reviewed-on: https://review.coreboot.org/16291
Reviewed-by: Martin Roth <martinroth@google.com>
Tested-by: build bot (Jenkins)

Change-Id: Icfc35b73bacb60b1f21e71e70ad4418ec3e644f6
Reviewed-on: https://chromium-review.googlesource.com/380987
Commit-Ready: Furquan Shaikh <furquan@chromium.org>
Tested-by: Furquan Shaikh <furquan@chromium.org>
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
2016-09-04 19:36:57 -07:00
Elyes HAOUAS
2641d8bb06 UPSTREAM: src/drivers: Add required space before opening parenthesis '('
BUG=None
BRANCH=None
TEST=None

Signed-off-by: Elyes HAOUAS <ehaouas@noos.fr>
Reviewed-on: https://review.coreboot.org/16321
Tested-by: build bot (Jenkins)
Reviewed-by: Martin Roth <martinroth@google.com>

Change-Id: I4d0087b2557862d04be54cf42f01b3223cb723ac
Reviewed-on: https://chromium-review.googlesource.com/380986
Commit-Ready: Furquan Shaikh <furquan@chromium.org>
Tested-by: Furquan Shaikh <furquan@chromium.org>
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
2016-09-04 19:36:54 -07:00
Elyes HAOUAS
b43ce2e7ff UPSTREAM: northbridge/via: Add required space before opening parenthesis '('
BUG=None
BRANCH=None
TEST=None

Signed-off-by: Elyes HAOUAS <ehaouas@noos.fr>
Reviewed-on: https://review.coreboot.org/16284
Tested-by: build bot (Jenkins)
Reviewed-by: Martin Roth <martinroth@google.com>

Change-Id: Ic644cf6792a5d360527e48e04c74ae92be0d1d4f
Reviewed-on: https://chromium-review.googlesource.com/380985
Commit-Ready: Furquan Shaikh <furquan@chromium.org>
Tested-by: Furquan Shaikh <furquan@chromium.org>
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
2016-09-04 19:36:52 -07:00
Elyes HAOUAS
2d09978e4c UPSTREAM: src/soc: Add required space before opening parenthesis '('
BUG=None
BRANCH=None
TEST=None

Signed-off-by: Elyes HAOUAS <ehaouas@noos.fr>
Reviewed-on: https://review.coreboot.org/16324
Tested-by: build bot (Jenkins)
Reviewed-by: Martin Roth <martinroth@google.com>

Change-Id: Ifc47f103492a2cd6c818dfd64be971d34afbe0a4
Reviewed-on: https://chromium-review.googlesource.com/380984
Commit-Ready: Furquan Shaikh <furquan@chromium.org>
Tested-by: Furquan Shaikh <furquan@chromium.org>
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
2016-09-04 19:36:49 -07:00
Elyes HAOUAS
3531d7d23d UPSTREAM: src/console: Add required space before opening parenthesis '('
BUG=None
BRANCH=None
TEST=None

Signed-off-by: Elyes HAOUAS <ehaouas@noos.fr>
Reviewed-on: https://review.coreboot.org/16323
Tested-by: build bot (Jenkins)
Reviewed-by: Paul Menzel <paulepanter@users.sourceforge.net>
Reviewed-by: Martin Roth <martinroth@google.com>

Change-Id: Ibb2ce383322c174bdb3bcc88ae35c17f179f6d21
Reviewed-on: https://chromium-review.googlesource.com/380983
Commit-Ready: Furquan Shaikh <furquan@chromium.org>
Tested-by: Furquan Shaikh <furquan@chromium.org>
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
2016-09-04 19:36:47 -07:00
Rizwan Qureshi
d18a2df56a UPSTREAM: skylake: Add initial FSP2.0 support
Add Initial pieces of code to support fsp2.0 in skylake keeping
the fsp1.1 flow intact.

The soc/romstage.h and soc/ramstage.h have a reference to
fsp driver includes, so split these header files for
each version of FSP driver.

Add the below files,
car_stage.S:
	Add romstage entry point (car_stage_entry).
	This calls into romstage_fsp20.c and aslo handles
	the car teardown.
romstage_fsp20.c:
	Call fsp_memory_init() and also has the callback
	for filling memory init parameters.

Also add monotonic_timer.c to verstage.

With this patchset and relevant change in kunimitsu mainboard,
we are able to boot to romstage.

TEST= Build and Boot Kunimitsu with PLATFORM_USES_FSP1_1
Build and Boot Kunimitsu to romstage with PLATFORM_USES_FSP2_0

BUG=None
BRANCH=None

Signed-off-by: Rizwan Qureshi <rizwan.qureshi@intel.com>
Reviewed-on: https://review.coreboot.org/16267
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
Tested-by: build bot (Jenkins)

Change-Id: I4309c8d4369c84d2bd1b13e8ab7bfeaaec645520
Reviewed-on: https://chromium-review.googlesource.com/380057
Commit-Ready: Furquan Shaikh <furquan@chromium.org>
Tested-by: Furquan Shaikh <furquan@chromium.org>
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
2016-09-04 19:36:45 -07:00
Arthur Heymans
3f2f19d893 UPSTREAM: i945: Enable changing VRAM size
On i945 the vram size is the default 8mb. It is also possible
to set it 1mb or 0mb hardcoding the GGC register in early_init.c

The intel documentation on i945, "Mobile Intel 945 Express Chipset
Family datasheet june 2008" only documents those three options.
They are set using 3 bits. The documententation also makes mention
of 4mb, 16mb, 32mb, 48mb, 64mb but not how to set it.

The other non documented (straight forward) bit combinations allow
to change the VRAM size to those other states.

What this patch does is:
- add those undocumented registers with their respective vram size to
the i945 NB code;
- make this a cmos option on targets that have this northbridge.

TEST: build, flash to target, set cmos as desired and boot linux.
On Debian it can be found using "dmesg | grep stolen".
NOTE: dmesg message about reserved vram are quite different depending
on linux version

BUG=None
BRANCH=None
TEST=None

Signed-off-by: Arthur Heymans <arthur@aheymans.xyz>
Reviewed-on: https://review.coreboot.org/14819
Tested-by: build bot (Jenkins)
Reviewed-by: Martin Roth <martinroth@google.com>

Change-Id: Ia71367ae3efb51bd64affd728407b8386e74594f
Reviewed-on: https://chromium-review.googlesource.com/380982
Commit-Ready: Furquan Shaikh <furquan@chromium.org>
Tested-by: Furquan Shaikh <furquan@chromium.org>
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
2016-09-04 19:36:42 -07:00
Andrey Petrov
a18c606165 UPSTREAM: soc/intel/apollolake: Disable Periodic Retraining per-SKU
Certain LPDDR4 models have some HW issues that can be worked around
by turning off Periodic Retraining feature in the memory controller.
Add option to disable PR per SKU.

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

TEST=run RMT test, pass

Signed-off-by: Andrey Petrov <andrey.petrov@intel.com>
Reviewed-on: https://review.coreboot.org/16320
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
Tested-by: build bot (Jenkins)

Change-Id: Ie7aa79586665f6d3a7edd854a9eef07e6a1b2ab8
Reviewed-on: https://chromium-review.googlesource.com/380981
Commit-Ready: Furquan Shaikh <furquan@chromium.org>
Tested-by: Furquan Shaikh <furquan@chromium.org>
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
2016-09-04 19:36:40 -07:00
Brandon Breitenstein
5bee99cbb6 UPSTREAM: soc/intel/apollolake: Update FSP UPD header files for SIC 1.1.3
Update FSP Header files to provide UPD for periodic training
disable. This is for the SIC 1.1.3/150_11 FSP release.

BUG=chrome-os-partner:54100
BRANCH=none
TEST=built coreboot image with new headers for reef

Signed-off-by: Brandon Breitenstein <brandon.breitenstein@intel.com>
Reviewed-on: https://review.coreboot.org/16352
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
Tested-by: build bot (Jenkins)

Change-Id: I2ba11aa3d2d664c1d34e39c4c8144fb1c4f2149a
Reviewed-on: https://chromium-review.googlesource.com/380980
Commit-Ready: Furquan Shaikh <furquan@chromium.org>
Tested-by: Furquan Shaikh <furquan@chromium.org>
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
2016-09-04 19:36:38 -07:00
Rizwan Qureshi
85c17bf7b7 UPSTREAM: driver/intel/fsp2.0: Add External stage cache region helper
If ramstage caching outside CBMEM is enabled
i.e CONFIG_CACHE_RELOCATED_RAMSTAGE_OUTSIDE_CBMEM, then a
helper function to determine the caching region in SMM
should be implemented. Add the same to FSP2.0 driver.
FSP1.1 driver had the same implementation hence copied stage_cache.c.

The SoC code should implement the smm_subregion to provide
the base and size of the caching region within SMM. The fsp/memmap.h
provides the prototype and we will reuse the same from FPS 1.1.

BUG=None
BRANCH=None
TEST=None

Signed-off-by: Rizwan Qureshi <rizwan.qureshi@intel.com>
Reviewed-on: https://review.coreboot.org/16312
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
Tested-by: build bot (Jenkins)

Change-Id: I4412a710391dc0cee044b96403c50260c3534e6f
Reviewed-on: https://chromium-review.googlesource.com/380056
Commit-Ready: Furquan Shaikh <furquan@chromium.org>
Tested-by: Furquan Shaikh <furquan@chromium.org>
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
2016-09-04 19:36:35 -07:00
Simon Glass
434e9ceb5f arm_tf: Fix code style nits and comments
Tidy up a few things which look incorrect in this file.

BUG=chrome-os-partner:56314
BRANCH=none
TEST=build for gru
Change-Id: Ida7a62ced953107c8e1723003bcb470c81de4c2f
Signed-off-by: Simon Glass <sjg@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/376848
Commit-Ready: Simon Glass <sjg@google.com>
Reviewed-by: Julius Werner <jwerner@chromium.org>
2016-09-04 17:47:57 -07:00
Shunqian Zheng
000b5c0993 gru/kevin: set 1.15v for lit cpu 1.5G
In kernel side we set 1.1v for 1.5G, even for coreboot RO,
a higer voltage could be safer, 1.2v now seems too high.

BRANCH=none
BUG=chrome-os-partner:56948
TEST=bootup

Change-Id: Iecc620deee553c61a330353ac160aa3a36f516df
Signed-off-by: Shunqian Zheng <zhengsq@rock-chips.com>
Reviewed-on: https://chromium-review.googlesource.com/380896
Reviewed-by: Julius Werner <jwerner@chromium.org>
2016-09-04 15:00:50 -07:00