Commit graph

18,728 commits

Author SHA1 Message Date
Hakim Giydan
f4e37e826f UPSTREAM: soc/marvell/mvmap2315: Add WDT driver
Testing: booted successfully.

BUG=None
BRANCH=None
TEST=None

Signed-off-by: Hakim Giydan <hgiydan@marvell.com>
Reviewed-on: https://review.coreboot.org/15519
Tested-by: build bot (Jenkins)
Reviewed-by: Martin Roth <martinroth@google.com>

Change-Id: Ie9c9297f321c838f86e5536aab29f67a0eeb053d
Reviewed-on: https://chromium-review.googlesource.com/384986
Commit-Ready: Furquan Shaikh <furquan@chromium.org>
Tested-by: Furquan Shaikh <furquan@chromium.org>
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
2016-09-13 22:20:54 -07:00
Hakim Giydan
644129a148 UPSTREAM: soc/marvell/mvmap2315: Add NVM driver
This driver uses BootROM callback to read and write
to the nvm using I2C.

Testing: booted successfully.

BUG=None
BRANCH=None
TEST=None

Signed-off-by: Hakim Giydan <hgiydan@marvell.com>
Reviewed-on: https://review.coreboot.org/16161
Tested-by: build bot (Jenkins)
Reviewed-by: Martin Roth <martinroth@google.com>

Change-Id: I8639af3e004f6631d7e596507c106159835f979f
Reviewed-on: https://chromium-review.googlesource.com/384985
Commit-Ready: Furquan Shaikh <furquan@chromium.org>
Tested-by: Furquan Shaikh <furquan@chromium.org>
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
2016-09-13 22:20:52 -07:00
Hakim Giydan
42af98cab9 UPSTREAM: soc/marvell/mvmap2315: Add A2BUS driver
A2BUS is a custom fabric.

Testing: booted successfully.

BUG=None
BRANCH=None
TEST=None

Signed-off-by: Hakim Giydan <hgiydan@marvell.com>
Reviewed-on: https://review.coreboot.org/15523
Tested-by: build bot (Jenkins)
Reviewed-by: Martin Roth <martinroth@google.com>

Change-Id: If6e61f5aa30217eb601ac460d9306166b8433569
Reviewed-on: https://chromium-review.googlesource.com/384984
Commit-Ready: Furquan Shaikh <furquan@chromium.org>
Tested-by: Furquan Shaikh <furquan@chromium.org>
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
2016-09-13 22:20:49 -07:00
Hakim Giydan
964f6395d0 UPSTREAM: soc/marvell/mvmap2315: Add PMIC driver
Testing: booted successfully.

BUG=None
BRANCH=None
TEST=None

Signed-off-by: Hakim Giydan <hgiydan@marvell.com>
Reviewed-on: https://review.coreboot.org/16149
Tested-by: build bot (Jenkins)
Reviewed-by: Martin Roth <martinroth@google.com>

Change-Id: I168206585f403d2259efe424e563982be661df0b
Reviewed-on: https://chromium-review.googlesource.com/384983
Commit-Ready: Furquan Shaikh <furquan@chromium.org>
Tested-by: Furquan Shaikh <furquan@chromium.org>
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
2016-09-13 22:20:47 -07:00
Hakim Giydan
068c970274 UPSTREAM: soc/marvell/mvmap2315: Add APMU driver
APMU is the AP power management unit.
It is a separate processor that handles enabling
individual power rails.

This driver handles sending and receiving commands
from/to APMU.

Testing: booted successfully.

BUG=None
BRANCH=None
TEST=None

Signed-off-by: Hakim Giydan <hgiydan@marvell.com>
Reviewed-on: https://review.coreboot.org/15518
Tested-by: build bot (Jenkins)
Reviewed-by: Martin Roth <martinroth@google.com>

Change-Id: I5ae07849f8432bece8a0ae9066a3f786e6e8d2fe
Reviewed-on: https://chromium-review.googlesource.com/384982
Commit-Ready: Furquan Shaikh <furquan@chromium.org>
Tested-by: Furquan Shaikh <furquan@chromium.org>
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
2016-09-13 22:20:45 -07:00
Hakim Giydan
d4832bb543 UPSTREAM: soc/marvell/mvmap2315: Add load_validate driver
Load_validate: it loads and validates images from
flash using hash values stored in the BDB.

Testing: booted successfully.

BUG=None
BRANCH=None
TEST=None

Signed-off-by: Hakim Giydan <hgiydan@marvell.com>
Reviewed-on: https://review.coreboot.org/16148
Tested-by: build bot (Jenkins)
Reviewed-by: Martin Roth <martinroth@google.com>

Change-Id: I0b00e8c60ed76622d03cb232d5c4273b4077aae7
Reviewed-on: https://chromium-review.googlesource.com/384981
Commit-Ready: Furquan Shaikh <furquan@chromium.org>
Tested-by: Furquan Shaikh <furquan@chromium.org>
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
2016-09-13 22:20:42 -07:00
Hakim Giydan
8a4464e9cb UPSTREAM: soc/marvell/mvmap2315: Add flash driver
Testing: booted successfully.

BUG=None
BRANCH=None
TEST=None

Signed-off-by: Hakim Giydan <hgiydan@marvell.com>
Reviewed-on: https://review.coreboot.org/15509
Tested-by: build bot (Jenkins)
Reviewed-by: Martin Roth <martinroth@google.com>

Change-Id: Iaeff9f01dbfad7f313aa237e8c71c36c4ed1e06f
Reviewed-on: https://chromium-review.googlesource.com/384980
Commit-Ready: Furquan Shaikh <furquan@chromium.org>
Tested-by: Furquan Shaikh <furquan@chromium.org>
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
2016-09-13 22:20:40 -07:00
Hakim Giydan
25155248ce UPSTREAM: soc/marvell/mvmap2315: Add gpio driver
Testing: booted successfully.

BUG=None
BRANCH=None
TEST=None

Signed-off-by: Hakim Giydan <hgiydan@marvell.com>
Reviewed-on: https://review.coreboot.org/15508
Tested-by: build bot (Jenkins)
Reviewed-by: Martin Roth <martinroth@google.com>

Change-Id: I89dee1bbf8b68460897f64bf673b328533e70cd4
Reviewed-on: https://chromium-review.googlesource.com/384979
Commit-Ready: Furquan Shaikh <furquan@chromium.org>
Tested-by: Furquan Shaikh <furquan@chromium.org>
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
2016-09-13 22:20:38 -07:00
Hakim Giydan
3615c1b6b2 UPSTREAM: google/rotor: Add support for the Rotor mainboard
BUG=None
BRANCH=None
TEST=None

Signed-off-by: Hakim Giydan <hgiydan@marvell.com>
Reviewed-on: https://review.coreboot.org/15507
Tested-by: build bot (Jenkins)
Reviewed-by: Martin Roth <martinroth@google.com>

Change-Id: I1f97b6f159a0ac36c96636066332ba355c056186
Reviewed-on: https://chromium-review.googlesource.com/384978
Commit-Ready: Furquan Shaikh <furquan@chromium.org>
Tested-by: Furquan Shaikh <furquan@chromium.org>
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
2016-09-13 22:20:35 -07:00
Hakim Giydan
27d3dbe26c UPSTREAM: soc/marvell: Add stub implementation of MVMAP2315 SOC
Most things still need to be filled in, but this will allow
us to build boards which use this SOC.

Nvidia Tegra210 SOC and Rochchip Rk3399 SOC has been used
as templates to create this directory.

BUG=None
BRANCH=None
TEST=None

Signed-off-by: Hakim Giydan <hgiydan@marvell.com>
Reviewed-on: https://review.coreboot.org/15506
Tested-by: build bot (Jenkins)
Reviewed-by: Martin Roth <martinroth@google.com>

Change-Id: I8cc3e99df915bb289a2f3539db103cd6be90a0b2
Reviewed-on: https://chromium-review.googlesource.com/384977
Commit-Ready: Furquan Shaikh <furquan@chromium.org>
Tested-by: Furquan Shaikh <furquan@chromium.org>
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
2016-09-13 22:20:33 -07:00
Werner Zeh
a2a1174ef9 UPSTREAM: fsp_broadwell_de: Add Kconfig switch for SERIRQ operation mode
The serial IRQ (SERIRQ) used by the LPC interface can operate either in
continuous or in quiet mode. Add a Kconfig switch to select the desired
mode. This switch can now be used on mainboard level to enable the
needed mode per mainboard.

BUG=None
BRANCH=None
TEST=None

Signed-off-by: Werner Zeh <werner.zeh@siemens.com>
Reviewed-on: https://review.coreboot.org/16575
Tested-by: build bot (Jenkins)
Reviewed-by: Martin Roth <martinroth@google.com>

Change-Id: Ibe246b88164a622f9c71ebe7bab752a083a49a62
Reviewed-on: https://chromium-review.googlesource.com/384976
Commit-Ready: Furquan Shaikh <furquan@chromium.org>
Tested-by: Furquan Shaikh <furquan@chromium.org>
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
2016-09-13 22:20:31 -07:00
Werner Zeh
65e7fb7700 UPSTREAM: siemens/mc_bdx1: Enable decoding for COM 3 & COM 4 on LPC
Since this mainboard provides 4 COM ports on LPC, enable decoding of
the corresponding addresses using the generic LPC decode registers.

BUG=None
BRANCH=None
TEST=None

Signed-off-by: Werner Zeh <werner.zeh@siemens.com>
Reviewed-on: https://review.coreboot.org/16535
Tested-by: build bot (Jenkins)
Reviewed-by: Paul Menzel <paulepanter@users.sourceforge.net>
Reviewed-by: Aaron Durbin <adurbin@chromium.org>

Change-Id: I0e93d40dca01d55f3567a18c7ec02269e3bec466
Reviewed-on: https://chromium-review.googlesource.com/384975
Commit-Ready: Furquan Shaikh <furquan@chromium.org>
Tested-by: Furquan Shaikh <furquan@chromium.org>
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
2016-09-13 22:20:28 -07:00
Elyes HAOUAS
4563a2ddad UPSTREAM: src/northbridge: Improve code formatting
BUG=None
BRANCH=None
TEST=None

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

Change-Id: Iffa058d9eb1e96a4d1587dc3f8a1740907ffbb32
Reviewed-on: https://chromium-review.googlesource.com/384974
Commit-Ready: Furquan Shaikh <furquan@chromium.org>
Tested-by: Furquan Shaikh <furquan@chromium.org>
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
2016-09-13 22:20:26 -07:00
Elyes HAOUAS
a103bc635a UPSTREAM: src/arch: Improve code formatting
BUG=None
BRANCH=None
TEST=None

Signed-off-by: Elyes HAOUAS <ehaouas@noos.fr>
Reviewed-on: https://review.coreboot.org/16434
Tested-by: build bot (Jenkins)
Reviewed-by: Omar Pakker

Change-Id: Ic1ca6c2e1cd06800d7eb2d00ac0b328987d022ef
Reviewed-on: https://chromium-review.googlesource.com/384973
Commit-Ready: Furquan Shaikh <furquan@chromium.org>
Tested-by: Furquan Shaikh <furquan@chromium.org>
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
2016-09-13 22:20:24 -07:00
Alexander Couzens
17b4cccd6f UPSTREAM: Makefile.inc: build ifdtool using its own makefile
BUG=None
BRANCH=None
TEST=None

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

Change-Id: I67c73c101b928d104e231064e05d367bf9584730
Reviewed-on: https://chromium-review.googlesource.com/384972
Commit-Ready: Furquan Shaikh <furquan@chromium.org>
Tested-by: Furquan Shaikh <furquan@chromium.org>
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
2016-09-13 22:20:21 -07:00
Alexander Couzens
4b3fdf9cda UPSTREAM: ifdtool/Makefile: use static dependencies
The generated dependencies doesn't work when
used together with our main build system.

BUG=None
BRANCH=None
TEST=None

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

Change-Id: I93d26858e961d7e275d586a1b8a26b3d33f3bd41
Reviewed-on: https://chromium-review.googlesource.com/384971
Commit-Ready: Furquan Shaikh <furquan@chromium.org>
Tested-by: Furquan Shaikh <furquan@chromium.org>
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
2016-09-13 22:20:19 -07:00
Alexander Couzens
6dfadb37df UPSTREAM: ifdtool: fix one whitespace format error
BUG=None
BRANCH=None
TEST=None

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

Change-Id: I5b1846eb3ef8253695066b315e8a105803390579
Reviewed-on: https://chromium-review.googlesource.com/384970
Commit-Ready: Furquan Shaikh <furquan@chromium.org>
Tested-by: Furquan Shaikh <furquan@chromium.org>
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
2016-09-13 22:20:17 -07:00
Arthur Heymans
3f20d0d884 UPSTREAM: lenovo/t60: add hda_verb.c
This creates a config for the Lenovo T60 sound card based
on values taken from vendor bios
(in /sys/class/sound/hwC0D0/init_pin_configs on linux 3.16).
The sound card configuration on the vendor bios is the same
as the one on the Lenovo x60.

It improves the default behavior of the sound card:
- internal microphone is chosen by default
- when jack is inserted it is chosen instead of internal speaker

BUG=None
BRANCH=None
TEST=None

Signed-off-by: Arthur Heymans <arthur@aheymans.xyz>
Reviewed-on: https://review.coreboot.org/16529
Tested-by: build bot (Jenkins)
Reviewed-by: Paul Menzel <paulepanter@users.sourceforge.net>
Reviewed-by: Alexander Couzens <lynxis@fe80.eu>

Change-Id: I44e3eaac437fe4ad97ff2b0eb32d36b33222c09b
Reviewed-on: https://chromium-review.googlesource.com/384969
Commit-Ready: Furquan Shaikh <furquan@chromium.org>
Tested-by: Furquan Shaikh <furquan@chromium.org>
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
2016-09-13 22:20:14 -07:00
Hakim Giydan
7f0e4bf4da UPSTREAM: arch/arm: Add armv7-r configuration
This change adds armv7-r support for all stages.

armv7-r is an ARM processor based on the Cortex-R series.

Currently, there is support for armv7-a and armv7-m and
armv7-a files has been modfied to accommodate armv7-r by
adding ENV_ARMV7_A, ENV_ARMV7_R and ENV_ARMV7_M constants
to src/include/rules.h.

armv7-r exceptions support will added in a later time.

BUG=None
BRANCH=None
TEST=None

Signed-off-by: Hakim Giydan <hgiydan@marvell.com>
Reviewed-on: https://review.coreboot.org/15335
Tested-by: build bot (Jenkins)
Reviewed-by: Martin Roth <martinroth@google.com>

Change-Id: If94415d07fd6bd96c43d087374f609a2211f1885
Reviewed-on: https://chromium-review.googlesource.com/384968
Commit-Ready: Furquan Shaikh <furquan@chromium.org>
Tested-by: Furquan Shaikh <furquan@chromium.org>
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
2016-09-13 22:20:12 -07:00
Rizwan Qureshi
abfef3c730 UPSTREAM: kunimitsu: Add initial FSP2.0 support
Add placeholders for functions required when skylake
uses FSP2.0 driver, keeping the fsp1.1 flow intact.

BUG=None
BRANCH=None
TEST=None

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

Change-Id: I5446f8cd093af289e0f6022b53a985fa29e32471
Reviewed-on: https://chromium-review.googlesource.com/380058
Commit-Ready: Furquan Shaikh <furquan@chromium.org>
Tested-by: Furquan Shaikh <furquan@chromium.org>
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
2016-09-13 22:20:10 -07:00
Rizwan Qureshi
44de8ae768 UPSTREAM: vendorcode/skylake: Add FSP header files without any adaptations
Add header files as is from FSP build output.
Move the FSP header files to new location as in apollolake.
Update all the FSP structure references now that they are
typedef'd.

BUG=None
BRANCH=None
TEST=None

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

Change-Id: I148bff04c064cf853eccaaaf7a465d0079c46b07
Reviewed-on: https://chromium-review.googlesource.com/384967
Commit-Ready: Furquan Shaikh <furquan@chromium.org>
Tested-by: Furquan Shaikh <furquan@chromium.org>
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
2016-09-13 22:20:08 -07:00
Naresh G Solanki
7d2b796afe UPSTREAM: driver/fsp2_0: Include stdint header file in api.h
'bool' type is reported undefined due to missing stdint.h inclusion,
Fix it by including the same.

BUG=None
BRANCH=None
TEST=None

Signed-off-by: Naresh G Solanki <naresh.solanki@intel.com>
Reviewed-on: https://review.coreboot.org/16538
Tested-by: build bot (Jenkins)
Reviewed-by: Aaron Durbin <adurbin@chromium.org>

Change-Id: Ib09c121471bd8c490442330a478145a7d1d8855f
Reviewed-on: https://chromium-review.googlesource.com/384966
Commit-Ready: Furquan Shaikh <furquan@chromium.org>
Tested-by: Furquan Shaikh <furquan@chromium.org>
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
2016-09-13 22:20:05 -07:00
Rizwan Qureshi
0a43410459 UPSTREAM: arch/x86: Utilize additional MTRRs in postcar_frame_add_mtrr
In the current implementation of postcar_frame_add_mtrr,
if provided size is bigger than the base address alignment,
the alignment is considered as size and covered by the MTRRs
ignoring the specified size.
In this case the callee has to make sure that the provided
size should be smaller or equal to the base address alignment
boundary.

To simplify this, utilize additonal MTRRs to cover the entire
size specified. We reuse the code from cpu/x86/mtrr/mtrr.c.

BUG=None
BRANCH=None
TEST=None

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

Change-Id: Ie2e88b596f43692169c7d4440b18498a72fcba11
Reviewed-on: https://chromium-review.googlesource.com/384965
Commit-Ready: Furquan Shaikh <furquan@chromium.org>
Tested-by: Furquan Shaikh <furquan@chromium.org>
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
2016-09-13 22:20:03 -07:00
Rizwan Qureshi
3b76048494 UPSTREAM: cpu/x86: Move fls() and fms() to mtrr.h
Move the funtion to find most significant bit set(fms)
and function to find least significant bit set(fls) to a common
place. And remove the duplicates.

BUG=None
BRANCH=None
TEST=None

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

Change-Id: Ia821038b622d93e7f719c18e5ee3e8112de66a53
Reviewed-on: https://chromium-review.googlesource.com/384964
Commit-Ready: Furquan Shaikh <furquan@chromium.org>
Tested-by: Furquan Shaikh <furquan@chromium.org>
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
2016-09-13 22:20:01 -07:00
Rizwan Qureshi
7e3b7ad551 UPSTREAM: arch/x86: Always compile postcar library in romstage
postcar_loader.c has a useful library of funtions for
setting up stack and MTRRs. Make it available in romstage
irrespective of CONFIG_POSTCAR_STAGE for use in stack setup
after Dram init.

The final step of moving the used and max MTRRs on to stack
is moved to a new function, that can be used outside of
postcar phase.

BUG=None
BRANCH=None
TEST=None

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

Change-Id: I322b12577d74268d03fe42a9744648763693cddd
Reviewed-on: https://chromium-review.googlesource.com/380061
Commit-Ready: Furquan Shaikh <furquan@chromium.org>
Tested-by: Furquan Shaikh <furquan@chromium.org>
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
2016-09-13 22:19:58 -07:00
Venkateswarlu Vinjamuri
e035f163da UPSTREAM: mainboard/google/reef: Enable lpss s0ix
This setting enables lpss to power gate in S0ix.

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

Signed-off-by: Venkateswarlu Vinjamuri <venkateswarlu.v.vinjamuri@intel.com>
Reviewed-on: https://review.coreboot.org/16558
Tested-by: build bot (Jenkins)
Reviewed-by: Aaron Durbin <adurbin@chromium.org>

Change-Id: I0a0fecb0e2b6e5e2f89ac505dd603f4be1bc161e
Reviewed-on: https://chromium-review.googlesource.com/384963
Commit-Ready: Furquan Shaikh <furquan@chromium.org>
Tested-by: Furquan Shaikh <furquan@chromium.org>
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
2016-09-13 22:19:56 -07:00
Venkateswarlu Vinjamuri
f2d03a461a UPSTREAM: mainboard/google/reef: Disable CLKREQ of unused PCIe root ports
1. Removes PCIe blocker for S0ix.
2. Set the correct PCIe root port for wifi/bt on EVT.
3. Turn off CLKREQs of unused PCIe root ports to power gate the IP.

BUG=None
BRANCH=None
TEST=None

Signed-off-by: Venkateswarlu Vinjamuri <venkateswarlu.v.vinjamuri@intel.com>
Reviewed-on: https://review.coreboot.org/16557
Tested-by: build bot (Jenkins)
Reviewed-by: Aaron Durbin <adurbin@chromium.org>

Change-Id: Iefd8869688d3a44b435dab9fc792275cd7f7e091
Reviewed-on: https://chromium-review.googlesource.com/384962
Commit-Ready: Furquan Shaikh <furquan@chromium.org>
Tested-by: Furquan Shaikh <furquan@chromium.org>
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
2016-09-13 22:19:54 -07:00
Werner Zeh
7729da04f8 UPSTREAM: fsp_broadwell_de: Correct access to SIRQ_CNTL register
The serial IRQ configuration register is only 8 bit wide so switch the
PCI access from 16 bits to 8 bits.

BUG=None
BRANCH=None
TEST=None

Signed-off-by: Werner Zeh <werner.zeh@siemens.com>
Reviewed-on: https://review.coreboot.org/16534
Tested-by: build bot (Jenkins)
Reviewed-by: Martin Roth <martinroth@google.com>

Change-Id: Ia9fbc02251e00b31440bf103e2afc2ff285b7f2e
Reviewed-on: https://chromium-review.googlesource.com/384961
Commit-Ready: Furquan Shaikh <furquan@chromium.org>
Tested-by: Furquan Shaikh <furquan@chromium.org>
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
2016-09-13 22:19:51 -07:00
Idwer Vollering
a4d9067709 UPSTREAM: buildgcc: Quote command substitution
There are shells where the result of a command substitution is subject
to word splitting (e.g. dash when assigning a value inside an export
statement).

BUG=None
BRANCH=None
TEST=None

Signed-off-by: Idwer Vollering <vidwer@gmail.com>
Signed-off-by: Nico Huber <nico.h@gmx.de>
Reviewed-on: https://review.coreboot.org/15820
Reviewed-by: Paul Menzel <paulepanter@users.sourceforge.net>
Tested-by: build bot (Jenkins)

Change-Id: I70a5bc124af7ee621da2bdb4777f3eaba8adafbb
Reviewed-on: https://chromium-review.googlesource.com/384960
Commit-Ready: Furquan Shaikh <furquan@chromium.org>
Tested-by: Furquan Shaikh <furquan@chromium.org>
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
2016-09-13 22:19:49 -07:00
Antonello Dettori
314da01473 UPSTREAM: southbridge/intel/i82801dx: transition away from device_t
Replace the use of the old device_t definition inside
southbridge/intel/i82801dx.

BUG=None
BRANCH=None
TEST=None

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

Change-Id: Ic08a23f672f8b5e40b837d49a9475d52c728a306
Reviewed-on: https://chromium-review.googlesource.com/384959
Commit-Ready: Furquan Shaikh <furquan@chromium.org>
Tested-by: Furquan Shaikh <furquan@chromium.org>
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
2016-09-13 22:19:47 -07:00
Antonello Dettori
6ea8f65632 UPSTREAM: southbridge/intel/i82801ax: transition away from device_t
Replace the use of the old device_t definition inside
southbridge/intel/i82801ax.

BUG=None
BRANCH=None
TEST=None

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

Change-Id: I46f0cc92e1034f045988b42df7246f5d0c8d24fc
Reviewed-on: https://chromium-review.googlesource.com/384958
Commit-Ready: Furquan Shaikh <furquan@chromium.org>
Tested-by: Furquan Shaikh <furquan@chromium.org>
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
2016-09-13 22:19:44 -07:00
Antonello Dettori
daa3a69296 UPSTREAM: southbridge/intel/i82371eb: transition away from device_t
Replace the use of the old device_t definition inside
southbridge/intel/i82371eb.

BUG=None
BRANCH=None
TEST=None

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

Change-Id: Ie15a656c817a2ffe0f44ee3a89659d138a1bf212
Reviewed-on: https://chromium-review.googlesource.com/384957
Commit-Ready: Furquan Shaikh <furquan@chromium.org>
Tested-by: Furquan Shaikh <furquan@chromium.org>
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
2016-09-13 22:19:42 -07:00
Antonello Dettori
eae4c1aa6e UPSTREAM: southbridge/intel/i3100: transition away from device_t
Replace the use of the old device_t definition inside
southbridge/intel/i3100.

BUG=None
BRANCH=None
TEST=None

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

Change-Id: Ic9616d5135cfb7206e086e51aaf82eb66540c4bb
Reviewed-on: https://chromium-review.googlesource.com/384956
Commit-Ready: Furquan Shaikh <furquan@chromium.org>
Tested-by: Furquan Shaikh <furquan@chromium.org>
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
2016-09-13 22:19:40 -07:00
Antonello Dettori
3589421b1a UPSTREAM: southbridge/intel/fsp_rangeley: transition away from device_t
Replace the use of the old device_t definition inside
southbridge/intel/fsp_rangeley.

BUG=None
BRANCH=None
TEST=None

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

Change-Id: I6665f85c74eb3e37d78f6eecbec977dc21a5ad12
Reviewed-on: https://chromium-review.googlesource.com/384955
Commit-Ready: Furquan Shaikh <furquan@chromium.org>
Tested-by: Furquan Shaikh <furquan@chromium.org>
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
2016-09-13 22:19:37 -07:00
Antonello Dettori
be47570c69 UPSTREAM: northbridge/intel/x4x: transition away from device_t
Replace the use of the old device_t definition inside
northbridge/intel/x4x.

BUG=None
BRANCH=None
TEST=None

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

Change-Id: I65cd02eacf57cb41ded434582ca6e9d9f655e6ea
Reviewed-on: https://chromium-review.googlesource.com/384954
Commit-Ready: Furquan Shaikh <furquan@chromium.org>
Tested-by: Furquan Shaikh <furquan@chromium.org>
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
2016-09-13 22:19:35 -07:00
Antonello Dettori
7f0bac5543 UPSTREAM: northbridge/intel/i5000: transition away from device_t
Replace the use of the old device_t definition inside
northbridge/intel/i5000.

BUG=None
BRANCH=None
TEST=None

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

Change-Id: Ic049d882ef22f117ee52ba497351f548e2355193
Reviewed-on: https://chromium-review.googlesource.com/384953
Commit-Ready: Furquan Shaikh <furquan@chromium.org>
Tested-by: Furquan Shaikh <furquan@chromium.org>
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
2016-09-13 22:19:33 -07:00
Antonello Dettori
0b8fd40fa5 UPSTREAM: northbridge/intel/e7505: transition away from device_t
Replace the use of the old device_t definition inside
northbridge/intel/e7505.

BUG=None
BRANCH=None
TEST=None

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

Change-Id: Ie819f380ec06667e11bcff3e9e993126a86b2c89
Reviewed-on: https://chromium-review.googlesource.com/384952
Commit-Ready: Furquan Shaikh <furquan@chromium.org>
Tested-by: Furquan Shaikh <furquan@chromium.org>
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
2016-09-13 22:19:30 -07:00
Vaibhav Shankar
d7451f9347 UPSTREAM: soc/intel/apollolake: Add functions to calculate GPIO address
Provide iosf and GPIO functions for GPIO address
calculation.

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

Signed-off-by: Vaibhav Shankar <vaibhav.shankar@intel.com>
Reviewed-on: https://review.coreboot.org/16349
Tested-by: build bot (Jenkins)
Reviewed-by: Aaron Durbin <adurbin@chromium.org>

Change-Id: I6eaa1fcecf5970b365e3418541c75b9866959f7e
Reviewed-on: https://chromium-review.googlesource.com/384951
Commit-Ready: Furquan Shaikh <furquan@chromium.org>
Tested-by: Furquan Shaikh <furquan@chromium.org>
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
2016-09-13 22:19:28 -07:00
Philipp Deppenwiese
085bf7d5ac UPSTREAM: util/release: Add support for signed tags and releases
* Add gpg key command-line parameter for signing.
* Add username command-line parameter for secure ssh clone.
* Tag and releases are signed.
* Generates ascii amored signature files.

BUG=None
BRANCH=None
TEST=None

Signed-off-by: Philipp Deppenwiese <zaolin@das-labor.org>
Reviewed-on: https://review.coreboot.org/16553
Tested-by: build bot (Jenkins)
Reviewed-by: Martin Roth <martinroth@google.com>

Change-Id: I41347a85145dd0389e3b69939497fb8543db4996
Reviewed-on: https://chromium-review.googlesource.com/383970
Commit-Ready: Furquan Shaikh <furquan@chromium.org>
Tested-by: Furquan Shaikh <furquan@chromium.org>
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
2016-09-13 22:19:26 -07:00
Damien Zammit
c7c5196470 UPSTREAM: mb/gigabyte/ga-g41m-es2l: Remove PCI disable on PEG bridge
Although the goal was to hide the ME device by disabling
the PCI bridge, the original comment that this bridge was ME related
was a mistake, this bridge is for PEG not for ME.
We still need this PCI bridge "on" to enable pci express graphics
add-on cards.

BUG=None
BRANCH=None
TEST=None

Signed-off-by: Damien Zammit <damien@zamaudio.com>
Reviewed-on: https://review.coreboot.org/16496
Tested-by: build bot (Jenkins)
Reviewed-by: Nico Huber <nico.h@gmx.de>

Change-Id: Ibf322136097d77a8e7c05dcb14f72da938187a0a
Reviewed-on: https://chromium-review.googlesource.com/383969
Commit-Ready: Furquan Shaikh <furquan@chromium.org>
Tested-by: Furquan Shaikh <furquan@chromium.org>
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
2016-09-13 22:19:23 -07:00
Antonello Dettori
dc0b5fa6b4 UPSTREAM: northbridge/intel/fsp_rangeley: transition away from device_t
Replace the use of the old device_t definition inside
northbridge/intel/fsp_rangeley.

BUG=None
BRANCH=None
TEST=None

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

Change-Id: I4c1e6af64fe70211db2fafdba9f39182dfea66fc
Reviewed-on: https://chromium-review.googlesource.com/383968
Commit-Ready: Furquan Shaikh <furquan@chromium.org>
Tested-by: Furquan Shaikh <furquan@chromium.org>
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
2016-09-13 22:19:21 -07:00
Lin Huang
43dfe55d71 rockchip: rk3399: improve sdram noc timing
sdram noc timing will affect ddr latency, this patch improve
rk3399 sdram noc timing so improve memory performance.

BRANCH=gru
BUG=chrome-os-partner:57248
TEST=Boot from kevin board

Change-Id: I393e74ecdeb72930ac38ae9bcf311e5654f65162
Signed-off-by: Lin Huang <hl@rock-chips.com>
Reviewed-on: https://chromium-review.googlesource.com/382725
Reviewed-by: Sonny Rao <sonnyrao@chromium.org>
Reviewed-by: Julius Werner <jwerner@chromium.org>
Tested-by: Sonny Rao <sonnyrao@chromium.org>
Commit-Queue: Sonny Rao <sonnyrao@chromium.org>
2016-09-10 02:48:54 +00:00
Damien Zammit
ecb4adba5d UPSTREAM: nb/intel/gm45: Fix DMAR table - IOMMU advertisement for ME interfaces
Previously the ME PCI interface (HECI) was being reported as present in
the DMAR ACPI table even when ME firmware was missing or the PCI device
was hidden and HECI would be unresponsive.
Now we check via the PCI config space itself to verify if the HECI
is present or not.

Note that this test could fail if ME firmware is present but
HECI is disabled in devicetree, because it would not advertise that the HECI
exists even though there is a running ME.  Perhaps this behaviour is desirable
because in this case you won't see the HECI in the lspci tree anyway.

BUG=None
BRANCH=None
TEST=None

Signed-off-by: Damien Zammit <damien@zamaudio.com>
Reviewed-on: https://review.coreboot.org/16330
Tested-by: build bot (Jenkins)
Reviewed-by: Swift Geek <swiftgeek@gmail.com>
Reviewed-by: Nico Huber <nico.h@gmx.de>

Change-Id: Ib692d476d85236b4886ecf3d6e6814229f441de0
Reviewed-on: https://chromium-review.googlesource.com/383694
Commit-Ready: Furquan Shaikh <furquan@chromium.org>
Tested-by: Furquan Shaikh <furquan@chromium.org>
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
2016-09-09 14:42:30 -07:00
Nico Huber
3ae49f19a8 UPSTREAM: edid: Fix a function signature
BUG=None
BRANCH=None
TEST=None

Signed-off-by: Nico Huber <nico.h@gmx.de>
Reviewed-on: https://review.coreboot.org/15211
Tested-by: build bot (Jenkins)

Change-Id: Id69cecb5cdd21c2d92aca74658f39c790f7b7b01
Reviewed-on: https://chromium-review.googlesource.com/383693
Commit-Ready: Furquan Shaikh <furquan@chromium.org>
Tested-by: Furquan Shaikh <furquan@chromium.org>
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
2016-09-09 12:33:33 -07:00
Jeremy Compostella
570b248381 UPSTREAM: libpayload: Fix strtok_r
This patch makes strtok_r:
- handle the end of the string
- handle string that contains only delimiters
- do not set ptr outside of str

BUG=None
BRANCH=None
TEST=None

Signed-off-by: Jeremy Compostella <jeremy.compostella@gmail.com>
Reviewed-on: https://review.coreboot.org/16524
Tested-by: build bot (Jenkins)
Reviewed-by: Stefan Reinauer <stefan.reinauer@coreboot.org>
Reviewed-by: Nico Huber <nico.h@gmx.de>

Change-Id: I49925040d951dffb9c11425334674d8d498821f1
Reviewed-on: https://chromium-review.googlesource.com/383692
Commit-Ready: Furquan Shaikh <furquan@chromium.org>
Tested-by: Furquan Shaikh <furquan@chromium.org>
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
2016-09-09 12:33:31 -07:00
Sebastian "Swift Geek" Grzywna
521d3eb9c2 UPSTREAM: intel/gma: Use defines for registers and values in edid.c
This replaces magic values with defines without changing any value.

BUG=None
BRANCH=None
TEST=None

Signed-off-by: Sebastian "Swift Geek" Grzywna <swiftgeek@gmail.com>
Reviewed-on: https://review.coreboot.org/16339
Tested-by: build bot (Jenkins)
Reviewed-by: Paul Menzel <paulepanter@users.sourceforge.net>
Reviewed-by: Nico Huber <nico.h@gmx.de>

Change-Id: I332442045aa4a28ffed88fc52a99a4364684f00c
Reviewed-on: https://chromium-review.googlesource.com/383691
Commit-Ready: Furquan Shaikh <furquan@chromium.org>
Tested-by: Furquan Shaikh <furquan@chromium.org>
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
2016-09-09 12:33:29 -07:00
Simon Glass
ec250b4931 rockchip: spi: Add support for 16-bit APB reads
With a SPI clock above about 24MHz the APB cannot keep up when doing
individual byte transfers. Adjust the driver to use 16-bit reads when
it can, to remove this bottleneck.

Any transaction which involves writing bytes still uses 8-bit transfers,
to simplify the code. These are the transfers that are not time-critical
since they tend to be small. The case that really matters is reading from
SPI flash.

In general we can use 16-bit reads anytime we are transferring an even
number of bytes. If the code detects an odd number of bytes, it tries to
perform the operation in two steps: once in 16-bit mode with an even
number of bytes, and once in 8-bit mode for the final byte. This allow
us to use 16-bit reads even if asked to transfer (for example) 0xf423
bytes.

The limit on in_now and out_now is adjusted to 0xfffe to avoid an extra
transfer when transferring ~>=64KB.

CQ-DEPEND=CL:383232
BUG=chrome-os-partner:56556
BRANCH=none
TEST=boot on gru and see that things still work correctly. I tested (with
extra debugging) that the 16-bit case is being picked when it should be.

Change-Id: Idc5b7e5d82cdbdc1e8fe8b2d6da819edf2d5570c
Signed-off-by: Simon Glass <sjg@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/381312
Commit-Ready: Julius Werner <jwerner@chromium.org>
Tested-by: Julius Werner <jwerner@chromium.org>
Reviewed-by: Julius Werner <jwerner@chromium.org>
2016-09-09 02:58:48 -07:00
Julius Werner
f8f7fd56e9 google/gru: Ensure correct pull resistors for special-function pins
Several of the special function pins we're using in firmware have a
pre-assigned pull-up or pull-down on power-on reset. We don't want those
to interfere with any of the signaling we're trying to do on those pins,
so this patch disables them.

Also do some house-cleaning to group the bootblock code better, and
change the setup code for all SPI and I2C buses to first initialize the
controller and then mux the pins... I assume this might be a little
safer (in case the controller peripheral has some pins in a weird state
before it gets fully initialized, we don't want to mux it through too
early).

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

Change-Id: I6bcf2b9a5dc686f2b6f82bd80fc9a1a245661c47
Signed-off-by: Julius Werner <jwerner@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/382532
2016-09-09 00:04:25 -07:00
Julius Werner
df5b236bfd rockchip: Remove pulls for gpio_output(), clean up code
Output GPIOs should never have a pull-up or pull-down resistor attached
since they're actively driven. Since some GPIOs get initialized with a
pull at power-on reset, we should explicitly overwrite that setting.
Most other platforms do this on gpio_output, but Rockchip hadn't yet.

Also, shuffle some code around to make things cleaner and allow for
easier code reuse.

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

Change-Id: I044266d71ef8bd0518316ff72d829d1ca1e30f35
Signed-off-by: Julius Werner <jwerner@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/382531
Reviewed-by: Simon Glass <sjg@google.com>
2016-09-09 00:04:23 -07:00
Aaron Durbin
f28c819506 UPSTREAM: mainboard/google/reef: move devicetree to baseboard
Move the current devicetree.cb to be under variants/baseboard.
New variants can provide their own devicetree as needed.

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

Signed-off-by: Aaron Durbin <adurbin@chromium.org>
Reviewed-on: https://review.coreboot.org/16510
Tested-by: build bot (Jenkins)
Reviewed-by: Furquan Shaikh <furquan@google.com>

Change-Id: Ib109ca4be883884b318264500d14aa8d40e3072a
Reviewed-on: https://chromium-review.googlesource.com/382722
Commit-Ready: Furquan Shaikh <furquan@chromium.org>
Tested-by: Furquan Shaikh <furquan@chromium.org>
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
2016-09-08 17:57:40 -07:00