mb/google/dedede/var/awasuki: Initialise overridetree

Initialise overridetree based on the schematics revision 20240715.

BUG=b:351968527
TEST=abuild -v -a -x -c max -p none -t google/dedede -b awasuki

Change-Id: Ie8194b6eca3e88f08f92e0ac8a9063b8de738652
Signed-off-by: Weimin Wu <wuweimin@huaqin.corp-partner.google.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/83496
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Eric Lai <ericllai@google.com>
Reviewed-by: Karthik Ramasubramanian <kramasub@google.com>
This commit is contained in:
Weimin Wu
2024-07-17 15:39:52 +08:00
committed by Felix Held
parent c19e32e69d
commit 7ba782814d
4 changed files with 212 additions and 9 deletions

View File

@@ -11,6 +11,7 @@ config BOARD_GOOGLE_BASEBOARD_DEDEDE
select DRIVERS_I2C_GENERIC
select DRIVERS_I2C_GPIO_MUX
select DRIVERS_I2C_HID
select DRIVERS_I2C_RT5645
select DRIVERS_INTEL_DPTF
select DRIVERS_INTEL_MIPI_CAMERA
select DRIVERS_SPI_ACPI

View File

@@ -1,3 +1,4 @@
## SPDX-License-Identifier: GPL-2.0-or-later
ramstage-y += gpio.c
ramstage-y += ramstage.c

View File

@@ -1,4 +1,13 @@
chip soc/intel/jasperlake
# USB Port Configuration
register "usb2_ports[1]" = "USB2_PORT_EMPTY"
register "usb2_ports[3]" = "USB2_PORT_EMPTY"
register "usb2_ports[4]" = "USB2_PORT_EMPTY"
register "usb2_ports[5]" = "USB2_PORT_MID(OC_SKIP)" # User Facing Camera
register "usb3_ports[0]" = "USB3_PORT_DEFAULT(OC_SKIP)" # USB3/2 Type-C Port C0
register "usb3_ports[1]" = "USB3_PORT_EMPTY"
register "usb3_ports[3]" = "USB3_PORT_EMPTY"
# Intel Common SoC Config
#+-------------------+---------------------------+
@@ -9,9 +18,9 @@ chip soc/intel/jasperlake
#| | for TPM communication |
#| | before memory is up |
#| I2C0 | Trackpad |
#| I2C1 | Digitizer |
#| I2C1 | Disable |
#| I2C2 | Touchscreen |
#| I2C3 | Camera |
#| I2C3 | Disable |
#| I2C4 | Audio |
#+-------------------+---------------------------+
register "common_soc_config" = "{
@@ -22,21 +31,193 @@ chip soc/intel/jasperlake
.i2c[0] = {
.speed = I2C_SPEED_FAST,
},
.i2c[1] = {
.speed = I2C_SPEED_FAST,
},
.i2c[2] = {
.speed = I2C_SPEED_FAST,
},
.i2c[3] = {
.speed = I2C_SPEED_FAST,
},
.i2c[4] = {
.speed = I2C_SPEED_FAST,
},
}"
# SerialIO device mode selection
register "SerialIoI2cMode" = "{
[PchSerialIoIndexI2C0] = PchSerialIoPci,
[PchSerialIoIndexI2C1] = PchSerialIoDisabled,
[PchSerialIoIndexI2C2] = PchSerialIoPci,
[PchSerialIoIndexI2C3] = PchSerialIoDisabled,
[PchSerialIoIndexI2C4] = PchSerialIoPci,
[PchSerialIoIndexI2C5] = PchSerialIoDisabled,
}"
# Power limit config
register "power_limits_config[JSL_N4500_6W_CORE]" = "{
.tdp_pl1_override = 7,
.tdp_pl2_override = 20,
}"
register "power_limits_config[JSL_N6000_6W_CORE]" = "{
.tdp_pl1_override = 7,
.tdp_pl2_override = 20,
}"
register "power_limits_config[JSL_N5100_6W_CORE]" = "{
.tdp_pl1_override = 7,
.tdp_pl2_override = 20,
}"
# TCC activation offset
register "tcc_offset" = "10" # TCC of 95C
# Set xHCI LFPS period sampling off time
register "xhci_lfps_sampling_offtime_ms" = "0"
device domain 0 on
device pci 15.0 on end
device pci 04.0 on
chip drivers/intel/dptf
## sensor information
register "options.tsr[0].desc" = ""Ambient""
register "options.tsr[1].desc" = ""Charger""
register "options.tsr[2].desc" = ""AUX""
register "options.tsr[3].desc" = ""USB""
## Passive Policy
register "policies.passive" = "{
[0] = DPTF_PASSIVE(CPU, TEMP_SENSOR_0, 50, 5000),
[1] = DPTF_PASSIVE(CPU, TEMP_SENSOR_1, 68, 5000),
[2] = DPTF_PASSIVE(CPU, TEMP_SENSOR_2, 68, 5000),
[3] = DPTF_PASSIVE(CPU, TEMP_SENSOR_3, 68, 5000),
}"
## Critical Policy
register "policies.critical" = "{
[0] = DPTF_CRITICAL(CPU, 105, SHUTDOWN),
[1] = DPTF_CRITICAL(TEMP_SENSOR_0, 80, SHUTDOWN),
[2] = DPTF_CRITICAL(TEMP_SENSOR_1, 90, SHUTDOWN),
[3] = DPTF_CRITICAL(TEMP_SENSOR_2, 90, SHUTDOWN),
[4] = DPTF_CRITICAL(TEMP_SENSOR_3, 90, SHUTDOWN),
}"
register "controls.power_limits.pl1" = "{
.min_power = 5000,
.max_power = 7000,
.time_window_min = 28 * MSECS_PER_SEC,
.time_window_max = 28 * MSECS_PER_SEC,
.granularity = 125,
}"
register "controls.power_limits.pl2" = "{
.min_power = 20000,
.max_power = 20000,
.time_window_min = 28 * MSECS_PER_SEC,
.time_window_max = 32 * MSECS_PER_SEC,
.granularity = 1000,
}"
## Charger Performance Control (Control, mA)
register "controls.charger_perf" = "{
[0] = { 255, 3000 },
[1] = { 32, 2000 },
[2] = { 24, 1500 },
[3] = { 16, 1000 },
[4] = { 8, 500 }
}"
device generic 0 on end
end
end # SA Thermal device
device pci 14.0 on
chip drivers/usb/acpi
device usb 0.0 on
chip drivers/usb/acpi
device usb 2.1 off end
end
chip drivers/usb/acpi
device usb 2.3 off end
end
chip drivers/usb/acpi
device usb 2.4 off end
end
chip drivers/usb/acpi
register "desc" = ""User Facing Camera""
register "type" = "UPC_TYPE_INTERNAL"
register "has_power_resource" = "1"
register "enable_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPP_D15)"
register "enable_delay_ms" = "20"
device usb 2.5 on end
end
chip drivers/usb/acpi
device usb 2.6 off end
end
chip drivers/usb/acpi
device usb 3.1 off end
end
chip drivers/usb/acpi
device usb 3.3 off end
end
end
end
end # USB xHCI
device pci 14.3 on
chip drivers/wifi/generic
register "wake" = "GPE0_PME_B0"
register "enable_cnvi_ddr_rfim" = "true"
register "add_acpi_dma_property" = "true"
device generic 0 on end
end
end # CNVi wifi
device pci 15.0 on
chip drivers/i2c/hid
register "generic.hid" = ""PNP0C50""
register "generic.desc" = ""PIXART Touchpad""
register "generic.irq" = "ACPI_IRQ_WAKE_LEVEL_LOW(GPP_B3_IRQ)"
register "generic.wake" = "GPE0_DW0_03"
register "generic.detect" = "1"
register "hid_desc_reg_offset" = "0x01"
device i2c 15 on end
end
end # I2C 0
device pci 15.1 off end # I2C 1
device pci 15.2 on
chip drivers/i2c/hid
register "generic.hid" = ""ELAN9008""
register "generic.desc" = ""ELAN Touchscreen""
register "generic.irq" = "ACPI_IRQ_LEVEL_LOW(GPP_D4_IRQ)"
register "generic.detect" = "1"
register "generic.reset_gpio" =
"ACPI_GPIO_OUTPUT_ACTIVE_LOW(GPP_D5)"
register "generic.enable_gpio" =
"ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPP_D6)"
register "generic.enable_delay_ms" = "7"
register "generic.has_power_resource" = "1"
register "hid_desc_reg_offset" = "0x01"
device i2c 10 on end
end
end # I2C 2
device pci 15.3 off end # I2C 3
device pci 16.0 off end # HECI 1
device pci 19.0 on
chip drivers/i2c/rt5645
register "hid" = ""10EC5650""
register "name" = ""RT58""
register "desc" = ""Realtek RT5650""
register "irq_gpio" = "ACPI_GPIO_IRQ_EDGE_BOTH(GPP_D16)"
register "cbj_sleeve" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPP_D17)"
register "jd_mode" = "2"
device i2c 1a on end
end
end # I2C 4
device pci 1c.7 on
chip drivers/wifi/generic
register "wake" = "GPE0_DW2_03"
device pci 00.0 on end
end
end # PCI Express Root Port 8 - WLAN
device pci 1f.3 on
chip drivers/sof
register "spkr_tplg" = "rt5650_sp"
register "jack_tplg" = "rt5650_hp"
register "mic_tplg" = "_2ch_pdm0"
device generic 0 on end
end
end # Intel HDA/cAVS
end
end

View File

@@ -0,0 +1,20 @@
/* SPDX-License-Identifier: GPL-2.0-or-later */
#include <baseboard/variants.h>
#include <fw_config.h>
#include <soc/soc_chip.h>
static void ext_vr_update(void)
{
struct soc_intel_jasperlake_config *cfg = config_of_soc();
if (fw_config_probe(FW_CONFIG(EXT_VR, EXT_VR_ABSENT))) {
printk(BIOS_INFO, "Device config for EXT_VR_ABSENT.\n");
cfg->disable_external_bypass_vr = 1;
}
}
void variant_devtree_update(void)
{
ext_vr_update();
}