Paul Fagerburg has uploaded this change for review. ( https://review.coreboot.org/c/coreboot/+/41640 )
Change subject: util/mb/google: add templates for dedede boards ......................................................................
util/mb/google: add templates for dedede boards
Add template directories for the Waddledee and Waddledoo reference boards of the Dedede baseboard.
BUG=b:157183582 BRANCH=None TEST=N/A
Signed-off-by: Paul Fagerburg pfagerburg@chromium.org Change-Id: Ida70a44097334991a93fec8f4933d7f6e39a187b --- A util/mainboard/google/waddledee/template/Makefile.inc A util/mainboard/google/waddledee/template/include/variant/ec.h A util/mainboard/google/waddledee/template/include/variant/gpio.h A util/mainboard/google/waddledee/template/memory.c A util/mainboard/google/waddledee/template/overridetree.cb A util/mainboard/google/waddledoo/template/Makefile.inc A util/mainboard/google/waddledoo/template/include/variant/acpi/camera.asl A util/mainboard/google/waddledoo/template/include/variant/ec.h A util/mainboard/google/waddledoo/template/include/variant/gpio.h A util/mainboard/google/waddledoo/template/memory.c A util/mainboard/google/waddledoo/template/overridetree.cb 11 files changed, 195 insertions(+), 0 deletions(-)
git pull ssh://review.coreboot.org:29418/coreboot refs/changes/40/41640/1
diff --git a/util/mainboard/google/waddledee/template/Makefile.inc b/util/mainboard/google/waddledee/template/Makefile.inc new file mode 100644 index 0000000..4643cb2 --- /dev/null +++ b/util/mainboard/google/waddledee/template/Makefile.inc @@ -0,0 +1,5 @@ +## SPDX-License-Identifier: GPL-2.0-or-later + +SPD_SOURCES += empty #0b0000 + +romstage-y += memory.c diff --git a/util/mainboard/google/waddledee/template/include/variant/ec.h b/util/mainboard/google/waddledee/template/include/variant/ec.h new file mode 100644 index 0000000..6e12175 --- /dev/null +++ b/util/mainboard/google/waddledee/template/include/variant/ec.h @@ -0,0 +1,12 @@ +/* + * + * + * SPDX-License-Identifier: GPL-2.0-or-later + */ + +#ifndef MAINBOARD_EC_H +#define MAINBOARD_EC_H + +#include <baseboard/ec.h> + +#endif diff --git a/util/mainboard/google/waddledee/template/include/variant/gpio.h b/util/mainboard/google/waddledee/template/include/variant/gpio.h new file mode 100644 index 0000000..c7e4605 --- /dev/null +++ b/util/mainboard/google/waddledee/template/include/variant/gpio.h @@ -0,0 +1,12 @@ +/* + * + * + * SPDX-License-Identifier: GPL-2.0-or-later + */ + +#ifndef MAINBOARD_GPIO_H +#define MAINBOARD_GPIO_H + +#include <baseboard/gpio.h> + +#endif /* MAINBOARD_GPIO_H */ diff --git a/util/mainboard/google/waddledee/template/memory.c b/util/mainboard/google/waddledee/template/memory.c new file mode 100644 index 0000000..2c81650 --- /dev/null +++ b/util/mainboard/google/waddledee/template/memory.c @@ -0,0 +1,17 @@ +/* SPDX-License-Identifier: GPL-2.0-or-later */ + +#include <baseboard/variants.h> +#include <baseboard/gpio.h> +#include <ec/google/chromeec/ec.h> +#include <gpio.h> + +bool variant_mem_is_half_populated(void) +{ + uint32_t board_ver; + + /* On boards where board version is populated, ram strap is also populated */ + if (!google_chromeec_get_board_version(&board_ver)) + return !gpio_get(GPIO_MEM_CH_SEL); + + return false; +} diff --git a/util/mainboard/google/waddledee/template/overridetree.cb b/util/mainboard/google/waddledee/template/overridetree.cb new file mode 100644 index 0000000..404024b --- /dev/null +++ b/util/mainboard/google/waddledee/template/overridetree.cb @@ -0,0 +1,42 @@ +chip soc/intel/jasperlake + + # Intel Common SoC Config + #+-------------------+---------------------------+ + #| Field | Value | + #+-------------------+---------------------------+ + #| GSPI0 | cr50 TPM. Early init is | + #| | required to set up a BAR | + #| | for TPM communication | + #| | before memory is up | + #| I2C0 | Trackpad | + #| I2C1 | Digitizer | + #| I2C2 | Touchscreen | + #| I2C3 | Camera | + #| I2C4 | Audio | + #+-------------------+---------------------------+ + register "common_soc_config" = "{ + .gspi[0] = { + .speed_mhz = 1, + .early_init = 1, + }, + .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, + }, + }" + + device domain 0 on + device pci 15.0 on end + end +end diff --git a/util/mainboard/google/waddledoo/template/Makefile.inc b/util/mainboard/google/waddledoo/template/Makefile.inc new file mode 100644 index 0000000..c1e68ce --- /dev/null +++ b/util/mainboard/google/waddledoo/template/Makefile.inc @@ -0,0 +1,5 @@ +## SPDX-License-Identifier: GPL-2.0-or-later + +SPD_SOURCES = empty #0b0000 + +romstage-y += memory.c diff --git a/util/mainboard/google/waddledoo/template/include/variant/acpi/camera.asl b/util/mainboard/google/waddledoo/template/include/variant/acpi/camera.asl new file mode 100644 index 0000000..318b0de --- /dev/null +++ b/util/mainboard/google/waddledoo/template/include/variant/acpi/camera.asl @@ -0,0 +1,3 @@ +/* SPDX-License-Identifier: GPL-2.0-only */ + +#include <baseboard/acpi/camera.asl> diff --git a/util/mainboard/google/waddledoo/template/include/variant/ec.h b/util/mainboard/google/waddledoo/template/include/variant/ec.h new file mode 100644 index 0000000..6e12175 --- /dev/null +++ b/util/mainboard/google/waddledoo/template/include/variant/ec.h @@ -0,0 +1,12 @@ +/* + * + * + * SPDX-License-Identifier: GPL-2.0-or-later + */ + +#ifndef MAINBOARD_EC_H +#define MAINBOARD_EC_H + +#include <baseboard/ec.h> + +#endif diff --git a/util/mainboard/google/waddledoo/template/include/variant/gpio.h b/util/mainboard/google/waddledoo/template/include/variant/gpio.h new file mode 100644 index 0000000..c7e4605 --- /dev/null +++ b/util/mainboard/google/waddledoo/template/include/variant/gpio.h @@ -0,0 +1,12 @@ +/* + * + * + * SPDX-License-Identifier: GPL-2.0-or-later + */ + +#ifndef MAINBOARD_GPIO_H +#define MAINBOARD_GPIO_H + +#include <baseboard/gpio.h> + +#endif /* MAINBOARD_GPIO_H */ diff --git a/util/mainboard/google/waddledoo/template/memory.c b/util/mainboard/google/waddledoo/template/memory.c new file mode 100644 index 0000000..2c81650 --- /dev/null +++ b/util/mainboard/google/waddledoo/template/memory.c @@ -0,0 +1,17 @@ +/* SPDX-License-Identifier: GPL-2.0-or-later */ + +#include <baseboard/variants.h> +#include <baseboard/gpio.h> +#include <ec/google/chromeec/ec.h> +#include <gpio.h> + +bool variant_mem_is_half_populated(void) +{ + uint32_t board_ver; + + /* On boards where board version is populated, ram strap is also populated */ + if (!google_chromeec_get_board_version(&board_ver)) + return !gpio_get(GPIO_MEM_CH_SEL); + + return false; +} diff --git a/util/mainboard/google/waddledoo/template/overridetree.cb b/util/mainboard/google/waddledoo/template/overridetree.cb new file mode 100644 index 0000000..69ea1e1 --- /dev/null +++ b/util/mainboard/google/waddledoo/template/overridetree.cb @@ -0,0 +1,58 @@ +chip soc/intel/jasperlake + + # USB Port Configuration + register "usb2_ports[5]" = "USB2_PORT_MID(OC_SKIP)" # Camera + + # Intel Common SoC Config + #+-------------------+---------------------------+ + #| Field | Value | + #+-------------------+---------------------------+ + #| GSPI0 | cr50 TPM. Early init is | + #| | required to set up a BAR | + #| | for TPM communication | + #| | before memory is up | + #| I2C0 | Trackpad | + #| I2C1 | Digitizer | + #| I2C2 | Touchscreen | + #| I2C3 | Camera | + #| I2C4 | Audio | + #+-------------------+---------------------------+ + register "common_soc_config" = "{ + .gspi[0] = { + .speed_mhz = 1, + .early_init = 1, + }, + .i2c[0] = { + .speed = I2C_SPEED_FAST, + .rise_time_ns = 66, + .fall_time_ns = 90, + .data_hold_time_ns = 350, + }, + .i2c[1] = { + .speed = I2C_SPEED_FAST, + }, + .i2c[2] = { + .speed = I2C_SPEED_FAST, + }, + .i2c[3] = { + .speed = I2C_SPEED_FAST, + }, + .i2c[4] = { + .speed = I2C_SPEED_FAST, + .speed_config[0] = { + .speed = I2C_SPEED_FAST, + .scl_lcnt = 176, + .scl_hcnt = 95, + .sda_hold = 36, + } + }, + }" + device domain 0 on + device pci 14.0 on end + device pci 15.0 on end + device pci 15.2 on end + device pci 1c.7 on end + device pci 19.0 on end + device pci 1f.3 on end + end +end