39577 Commits

Author SHA1 Message Date
Jeremy Soller
3bbeddab3d Fix lemp9 backlight ACPI issues
Change-Id: I59764f35f5057597031f89b367824fc8c3213280
2021-03-11 15:19:48 -07:00
Jeremy Soller
62f0b28987
oryp7: Do not allow memory overclocking due to increase in stability issues
Change-Id: I3c3bdfbc9008d80d1b18cc40e93280f0b5cb38f7
2021-03-03 15:09:46 -07:00
Jeremy Soller
54c1380774
Set oryp7 touchpad IRQ to edge triggered
Change-Id: Ib7e52e899f6d5b6b0fdfe1cbbce7d79b55ac357b
2021-02-26 14:53:29 -07:00
Tim Crawford
b8559b8b61 Revert "mb/system76: Configure HID IRQs as level triggered"
This reverts commit c1e02290948e7cf34ed5b9a6d80a167ab0956023.

This change breaks the touchpad on oryp6. We will change these as-needed
if it proves to resolve issues, not just because Microsoft says so.
2021-02-26 14:51:42 -07:00
Jeremy Soller
0c2cc3e73e oryp7
Change-Id: Id5b960a8a8929063e0b0e56e079324c80f2b6638
2021-02-22 09:50:50 -07:00
Tim Crawford
6c748392f2 mb/system76/gaze15: Fix build
Change-Id: Idd6774b885c9f841b7595b88b2139daa906690aa
2021-02-10 13:59:49 -07:00
Tim Crawford
c1e0229094 mb/system76: Configure HID IRQs as level triggered
Per upstream [1], HID over I2C must be level triggered.

[1]: https://review.coreboot.org/c/coreboot/+/50452

Change-Id: Ie0eafe4b7a3b3472db8c5eae0bcb5116432a200b
2021-02-10 13:59:49 -07:00
Jeremy Soller
5a303e242e galp5: Set DGPU GPIO delays to prevent RTD3 crashes
Change-Id: I7deb8a22b767164357bc408f666603d65cedc439
2021-02-09 07:53:45 -07:00
Tim Crawford
e5cb4d2fc5 mb/system76: Use PAD_NC for unconnected pins
- Fix indentation level
- Document pins
- Use PAD_NC

Change-Id: Ieeec4a8e56725574225b815d4d05605733d18a24
2021-02-01 08:24:25 -07:00
Tim Crawford
eb025e0d6d mb/system76: Remove use of cnl_configure_pads()
Replace FSP hack with mainboard_ops .init() on CFL/CML.

Change-Id: If0949b4f7b748ddab35bcc0b7291ae6ac2f01cd8
2021-02-01 08:23:49 -07:00
Tim Crawford
4b98a9be54 mb/system76: Remove options selected by SOC
The SOCs already select these two options:

- HAVE_SMI_HANDLER
- SOC_INTEL_COMMON_BLOCK_HDA

Change-Id: Icb71516d72e592cc177ff40930acb9c0c185362f
2021-01-28 07:32:14 -07:00
Tim Crawford
67d15c2b28 mb/system76: Clean up dsdt.asl
- Use ACPI_DSDT_REV_2 instead of hard-coded value
- Update thelio-b1 to match other boards

Change-Id: I62bf9bfc4114c581bd0ec02d5a081d582a7aef32
2021-01-28 07:32:14 -07:00
Tim Crawford
f32ef3e031 mb/system76: acpi: Replace One with literal
Change-Id: I6ad551a228a43d6775b3290473e9c8951f9856b1
2021-01-28 07:32:14 -07:00
Tim Crawford
72bc5f2b46 mb/system76: Don't set SaGv for H series boards
Per the FSP integration guides, Geyserville only affects ULX/ULT CPUs.

Change-Id: I25edc19ae9d3ea949a214c04d8af11c2cc1f3082
2021-01-28 07:32:14 -07:00
Tim Crawford
8661b99e6c mb/system76: Update devicetrees based on upstream
Upstream is moving towards having registers set within their relevant
device. Do this now to reduce the diff for upstreaming and later syncing
changes back.

Does not touch the TGL boards or lemp9, which have most of the changes.

- Move registers to devices
- Remove unneeded registers
- Remove extra comments

Change-Id: I8cd54d428493981538722e9fe6a8f3ff2918a041
2021-01-26 09:17:21 -07:00
Tim Crawford
3b2ff0c148 mb/system76: Simplify romstage.c
- Remove the comments, which were copied from the header
- Remove the dq entries for LPDDR, which are not used
- Allow higher memory speeds on oryp5

Change-Id: Ied41e9aad832c19344f92845b0d8d4bdab7e1ac8
2021-01-26 09:16:28 -07:00
Jeremy Soller
edd97f35bd
Correct darp7 PL2
Change-Id: I51f047b62a8a2eadcaf89a4c6e6041d5bb9d1331
2021-01-21 09:01:11 -07:00
Tim Crawford
53ff179883 src/drivers/smmstore: Fix SMMSTOREv1 clear command
The `clear` command for SMMSTORE version 1 does not require a parameter.

Change-Id: I992b7ce5962bf7ee62b7e1970ae7aa1b975ef42e
Signed-off-by: Tim Crawford <tcrawford@system76.com>
2021-01-19 13:36:59 -07:00
Jeremy Soller
7ae73fcd9a
Fix merge issue in gaze15 mainboard
Change-Id: Ib4c568f74eec928a420fb42204303ef1c65c3c71
2021-01-15 15:07:00 -07:00
Jeremy Soller
b702ccb963
Fix compilation after merging upstream
Change-Id: Ic2dbbf351f2b14b6d9a1c1b123ce2553a73a2f79
2021-01-15 11:46:56 -07:00
Jeremy Soller
cc355edf58 Add tigerlake mainboards
Change-Id: Id239f4bb28a3c755a6ff64d66ec046b0da6c27ef
2021-01-15 10:56:28 -07:00
Jeremy Soller
3be97acaef intel/block/pcie/rtd3: Also implement _PR3
Change-Id: Id7f4373989dffe8c3bc68a034f59a94d2160dd15
2021-01-15 10:56:28 -07:00
Jeremy Soller
49b288c4ec intel/block/pcie/rtd3: ACPI debug messages
Change-Id: Icc4a882ff73f62a134b92f1afb0dc298ea809189
2021-01-15 10:56:28 -07:00
Jeremy Soller
d94e88c70c soc/intel/tigerlake: Update to new FSP
Change-Id: I8076322d2950b33641a1a2aa678b9e088c494a43
2021-01-15 10:56:28 -07:00
Jeremy Soller
4596229eab soc/intel/tigerlake: Allow mixed topology where one slot is unfilled
Change-Id: Idf37290a410a2e31549e26e852b94f81fc939061
2021-01-15 10:56:28 -07:00
Jeremy Soller
999277b67b soc/intel/tigerlake: Fixes for TCSS D3
Change-Id: Ibbf6b5e0bf627536d10c8dee2f632e66da427151
2021-01-15 10:56:28 -07:00
Jeremy Soller
d695a261af soc/intel/tigerlake: Add PEG0 device to ACPI
Change-Id: If2f8220f05ca7d3f5f1a2e12ca8752c934525466
2021-01-15 10:56:28 -07:00
Jeremy Soller
020f2b8897 soc/intel/tigerlake: Add i915_gpu_controller_info
Change-Id: Iadb530d7113a48549779ea3baa499f9f7a772f32
2021-01-15 10:56:28 -07:00
Jeremy Soller
6e6da3bd29 intel/block/acpi: Allow GFX device to be redefined
Change-Id: I218e183bb30c9d18221b6cc98c9fb823f7866775
2021-01-15 10:56:28 -07:00
Jeremy Soller
ead3af013e drivers/system76/dgpu: Support GPU device on different PEG
Change-Id: I4386e89c6af8b1c0a2512f96f1c972685400d006
2021-01-15 10:56:28 -07:00
Jeremy Soller
688d22d133 .gitmodules: Use absolute paths
Change-Id: I9aed8bbcf0e77d8ecc1a8fc7ffc8317912446472
2021-01-15 10:56:28 -07:00
Jeremy Soller
162df7eb4b
Remove FSP debugging from cannonlake romstage
Change-Id: I2638de0ec6a4b21328ec760be98746b43120af6b
2021-01-15 09:11:02 -07:00
Jeremy Soller
151b23c3dd
Reduce lemp9 changes from upstream
Change-Id: I420a348ec059528a85ec507e1af801578f63c362
2021-01-15 09:10:45 -07:00
Jeremy Soller
460e0b7298
Merge remote-tracking branch 'upstream/master' into system76
Change-Id: I17bc4af150d800f208118b4a3c5d5f15cc656e1c
2021-01-15 08:48:48 -07:00
Shaoming Chen
769320d1c4 mb/google/kukui: Add new ddr architecture support for kukui
Two configuration files are added:
1. H9HCNNNFAMMLXR-NEE-8GB: new byte mode
2. MT53E1G32D2NP-046-4GB: new single rank mode

Also initialize the rank number field 'rank_num' for all configs.

BUG=b:165768895
BRANCH=kukui
TEST=DDR boot up correctly on Kukui

Signed-off-by: Shaoming Chen <shaoming.chen@mediatek.corp-partner.google.com>
Change-Id: I1786c1e251e8d6e110cbdce79feeb386db220404
Reviewed-on: https://review.coreboot.org/c/coreboot/+/49108
Reviewed-by: Yu-Ping Wu <yupingso@google.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2021-01-15 11:29:34 +00:00
Shaoming Chen
5ff588dbc1 soc/mediatek/mt8183: Support byte mode and single rank DDR
1. Add emi setting to support byte mode and single rank ddr sample
2. Modify initial setting for DDR with different architecture

BUG=b:165768895
BRANCH=kukui
TEST=DDR boot up correctly on Kukui

Signed-off-by: Shaoming Chen <shaoming.chen@mediatek.corp-partner.google.com>
Change-Id: Id2845b2b60e2c447486ee25259dc6a05a0bb619b
Reviewed-on: https://review.coreboot.org/c/coreboot/+/48300
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Yu-Ping Wu <yupingso@google.com>
2021-01-15 11:29:17 +00:00
Frank Wu
f296273692 mb/google/zork/var/vilboz: Add WiFi SAR for Vilboz
The fw_config field SPI_SPEED is not used for zork devices.
To define SAR config, use the fw_config bit[23..26].
Then vilboz can loaded different WiFi SAR table for different SKUs.

BUG=b:176858126, b:176751675, b:176538384
BRANCH=zork
TEST=emerge-zork coreboot chromeos-bootimage, then verify that tables are
in CBFS and loaded by iwlwifi driver.

Signed-off-by: Frank Wu <frank_wu@compal.corp-partner.google.com>
Change-Id: I5ba98799e697010997b515ee88420d0ac14ca7ec
Reviewed-on: https://review.coreboot.org/c/coreboot/+/49296
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Kangheui Won <khwon@chromium.org>
Reviewed-by: EricR Lai <ericr_lai@compal.corp-partner.google.com>
Reviewed-by: Furquan Shaikh <furquan@google.com>
2021-01-15 11:28:31 +00:00
Jason Glenesk
276e865e7f soc/amd/picasso: Generate ACPI CRAT objects in cb
Add code to collect all required information and generate ACPI CRAT
table entries. Publish tables generated from cb, rather than use the
tables created by FSP binary.

BUG=b:155307433
TEST=Boot trembyle and compare coreboot generated tables with tables
that FSP published previously.
BRANCH=Zork

Change-Id: If64fd624597b2ced014ba7f0332a6a48143c0e8c
Signed-off-by: Jason Glenesk <jason.glenesk@amd.corp-partner.google.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/47727
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Marshall Dawson <marshalldawson3rd@gmail.com>
Reviewed-by: Angel Pons <th3fanbus@gmail.com>
2021-01-15 11:27:23 +00:00
David Wu
fd104e1c5d mb/google/volteer/var/voema: Configure USB2 ports for Type C
Based on voema schematics, two USB2 ports 3 and 5 are assigned to type C
connectors on Voema board.

BUG=b:177483061 b:172535001
TEST=Build and boot Voema.

Signed-off-by: David Wu <david_wu@quanta.corp-partner.google.com>
Change-Id: I12cef85595e511801ab9c563ae4aa26e25875679
Reviewed-on: https://review.coreboot.org/c/coreboot/+/49451
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Paul Fagerburg <pfagerburg@chromium.org>
Reviewed-by: Tim Wawrzynczak <twawrzynczak@chromium.org>
2021-01-15 11:26:41 +00:00
Michael Niewöhner
ec1c0f5337 mb/siemens/mc_apl1: do LPC/eSPI pad configuration at board-level
Do LPC/eSPI pad configuration at board-level to match other platforms.

Early gpio configuration was done in romstage, while LPC pads were
configured in bootblock. Instead of adding another dedicated gpio table
for bootblock, move early gpio configuration completely to bootblock on
these boards. This won't hurt, since there is no code touching the pads
in between.

The soc code gets dropped in CB:49410.

Change-Id: I2a614afb305036b0581eac8ed6a723a3f80747b3
Tested-by: Mario Scheithauer <mario.scheithauer@siemens.com>
Signed-off-by: Michael Niewöhner <foss@mniewoehner.de>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/49413
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Mario Scheithauer <mario.scheithauer@siemens.com>
2021-01-15 11:26:20 +00:00
Angel Pons
7519ca42b5 nb/intel/sandybridge: Clarify command timing calculation
Command timing is the absolute value of the most negative `pi_coding`
value across all ranks, or zero if there are no negative values. Use the
MAX() macro to ease proving that `cmd_delay` can never be negative, and
then drop the always-false underflow check.

The variable type for `cmd_delay` still needs to be signed because of
the comparisons with `pi_coding`, which is a signed value. Using an
unsigned type would result in undefined and also undesired behavior.

Change-Id: I714d3cf57d0f62376a1107af63bcd761f952bc3a
Signed-off-by: Angel Pons <th3fanbus@gmail.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/49320
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Nico Huber <nico.h@gmx.de>
2021-01-15 11:24:41 +00:00
Angel Pons
0a7d99c089 nb/intel/sandybridge: Fix handling of clock timing
Clock is a differential signal and propagates faster than command and
control, therefore its timing needs to be offset with `pi_code_offset`.
It is also a periodic signal, so it can safely wrap around.

To avoid potential undefined behavior, make `clk_delay` signed. It makes
no difference with valid values, because the initial value can be proven
to never be negative and `pi_code_offset` is always positive. With this
change, it is possible to add an underflow check, for additional sanity.

Change-Id: I375adf84142079f341b060fba5e79ce4dcb002be
Signed-off-by: Angel Pons <th3fanbus@gmail.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/49319
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Nico Huber <nico.h@gmx.de>
2021-01-15 11:24:32 +00:00
Angel Pons
89200d2786 nb/intel/sandybridge: Remove wrong and nonsense condition
Commit 7584e550cc (nb/intel/sandybridge: Clean up program_timings)
introduced this condition along with a comment that says the opposite.
Command and clock timings always need to be computed, so drop both the
nonsensical condition and the equally-worthless corresponding comment.

Change-Id: I509f0f6304bfb3e033c0c3ecd1dd5c9645e004b2
Signed-off-by: Angel Pons <th3fanbus@gmail.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/49318
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Nico Huber <nico.h@gmx.de>
2021-01-15 11:24:15 +00:00
Angel Pons
bda1c552e9 cpu/intel/haswell/acpi.c: Use C-state enum definitions
Tested with BUILD_TIMELESS=1, Asrock B85M Pro4 does not change.

Change-Id: I0ca98cbe45e10d233607f68923f08752fdda9698
Signed-off-by: Angel Pons <th3fanbus@gmail.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/46923
Reviewed-by: Arthur Heymans <arthur@aheymans.xyz>
Reviewed-by: Michael Niewöhner <foss@mniewoehner.de>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2021-01-15 11:23:41 +00:00
Angel Pons
ba5761a947 cpu/intel/haswell: Factor out ACPI C-state values
There's no need to have them in the devicetree. ACPI generation can now
be simplified even further, and is done in subsequent commits.

Change-Id: I3a788423aee9be279797a1f7c60ab892a0af37e7
Signed-off-by: Angel Pons <th3fanbus@gmail.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/46908
Reviewed-by: Arthur Heymans <arthur@aheymans.xyz>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2021-01-15 11:23:23 +00:00
Angel Pons
6d2d19de74 mb/intel/baskingridge: Replace invalid C-state values
Basking Ridge is not ULT, thus does not support C-states deeper than C7.
Replace them with the values used by all other Haswell non-ULT boards to
allow subsequent commits to cleanly factor them out of the devicetree.

Change-Id: Ife34f7828f9ef19c8fccb3ac7b60146960112a81
Signed-off-by: Angel Pons <th3fanbus@gmail.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/46907
Reviewed-by: Arthur Heymans <arthur@aheymans.xyz>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2021-01-15 11:22:58 +00:00
Karthikeyan Ramasubramanian
8832de380d mb/google/dedede/var/boten: Update LTE GPIO configuration
LTE module is not expected to be powered off during warm reset. Hence
configure the LTE_PWR_OFF_ODL (GPP_A10) gpio pad reset configuration to
PWROK and set the TX state to 1.

BUG=b:163100335
BRANCH=dedede
TEST=Verified through the waveforms that power sequence is meeting the LTE module requirements.

Change-Id: I8676da6186559288aabe078b6158fc01075c7b41
Signed-off-by: Karthikeyan Ramasubramanian <kramasub@google.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/48623
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Henry Sun <henrysun@google.com>
Reviewed-by: Furquan Shaikh <furquan@google.com>
2021-01-15 11:22:37 +00:00
Angel Pons
06e6983002 soc/intel/braswell: Prevent NULL pointer dereference
Exit early if the chipset power state info isn't in CBMEM. Return -1 in
order to ensure the one caller of this function exits early as well.

Found-by: Coverity CID 1442304
Change-Id: Ifa42ba3024d3144de486d90ed7752820482549bf
Signed-off-by: Angel Pons <th3fanbus@gmail.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/49359
Reviewed-by: Arthur Heymans <arthur@aheymans.xyz>
Reviewed-by: Tim Wawrzynczak <twawrzynczak@chromium.org>
Reviewed-by: Paul Menzel <paulepanter@users.sourceforge.net>
Reviewed-by: Lance Zhao
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2021-01-15 11:22:28 +00:00
Tim Chen
77a7520385 mb/google/dedede/var/metaknight: Add LTE power on/off sequence
LTE module used in metaknight has a specific power on/off sequence.
GPIOs related to power sequence are:
* GPP_A10 - LTE_PWR_OFF_R_ODL
* GPP_H17 - LTE_RESET_R_ODL
1. Power on: GPP_A10 -> 20ms -> GPP_H17
2. Power off: GPP_H17 -> 10ms -> GPP_A10
3. Warm reset: GPP_A10 keeps high, GPP_H17 goes low at least 2ms
Configure the GPIOs based on these requirements.

BUG=b:173671094
TEST=Build and boot Metaknight to OS. Ensure that the LTE module power
sequence requirements are met.

Change-Id: Ibff16129dfe2f1de2b1519049244aba4b3123e52
Signed-off-by: Tim Chen <tim-chen@quanta.corp-partner.google.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/48195
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Karthik Ramasubramanian <kramasub@google.com>
2021-01-15 11:22:13 +00:00
Angel Pons
9d20c84460 nb/intel/x4x: Clean up raminit comments
Use C-style comments everywhere, and follow the coding style.

Tested with BUILD_TIMELESS=1, Asus P5QL PRO remains identical.

Change-Id: I3ef96c5f6553ad50cee7d7f5614128b62a89e4ea
Signed-off-by: Angel Pons <th3fanbus@gmail.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/49387
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Arthur Heymans <arthur@aheymans.xyz>
2021-01-15 11:21:42 +00:00