summaryrefslogtreecommitdiff
path: root/board/trembyle
diff options
context:
space:
mode:
authorJack Rosenthal <jrosenth@chromium.org>2021-11-04 12:11:58 -0600
committerCommit Bot <commit-bot@chromium.org>2021-11-05 04:22:34 +0000
commit252457d4b21f46889eebad61d4c0a65331919cec (patch)
tree01856c4d31d710b20e85a74c8d7b5836e35c3b98 /board/trembyle
parent08f5a1e6fc2c9467230444ac9b582dcf4d9f0068 (diff)
downloadchrome-ec-stabilize-14396.B-ish.tar.gz
In the interest of making long-term branch maintenance incur as little technical debt on us as possible, we should not maintain any files on the branch we are not actually using. This has the added effect of making it extremely clear when merging CLs from the main branch when changes have the possibility to affect us. The follow-on CL adds a convenience script to actually pull updates from the main branch and generate a CL for the update. BUG=b:204206272 BRANCH=ish TEST=make BOARD=arcada_ish && make BOARD=drallion_ish Signed-off-by: Jack Rosenthal <jrosenth@chromium.org> Change-Id: I17e4694c38219b5a0823e0a3e55a28d1348f4b18 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3262038 Reviewed-by: Jett Rink <jettrink@chromium.org> Reviewed-by: Tom Hughes <tomhughes@chromium.org>
Diffstat (limited to 'board/trembyle')
l---------board/trembyle/analyzestack.yaml1
-rw-r--r--board/trembyle/battery.c65
-rw-r--r--board/trembyle/board.c530
-rw-r--r--board/trembyle/board.h218
-rw-r--r--board/trembyle/build.mk15
-rw-r--r--board/trembyle/ec.tasklist26
-rw-r--r--board/trembyle/gpio.inc141
-rw-r--r--board/trembyle/led.c71
-rw-r--r--board/trembyle/vif_override.xml3
9 files changed, 0 insertions, 1070 deletions
diff --git a/board/trembyle/analyzestack.yaml b/board/trembyle/analyzestack.yaml
deleted file mode 120000
index 4c09084128..0000000000
--- a/board/trembyle/analyzestack.yaml
+++ /dev/null
@@ -1 +0,0 @@
-../../baseboard/zork/analyzestack.yaml \ No newline at end of file
diff --git a/board/trembyle/battery.c b/board/trembyle/battery.c
deleted file mode 100644
index 33e4e9ce5d..0000000000
--- a/board/trembyle/battery.c
+++ /dev/null
@@ -1,65 +0,0 @@
-/* Copyright 2019 The Chromium OS Authors. All rights reserved.
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- *
- * Battery pack vendor provided charging profile
- */
-
-#include "battery_fuel_gauge.h"
-#include "common.h"
-#include "util.h"
-
-/*
- * Battery info for all Zork battery types. Note that the fields
- * start_charging_min/max and charging_min/max are not used for the charger.
- * The effective temperature limits are given by discharging_min/max_c.
- *
- * Fuel Gauge (FG) parameters which are used for determining if the battery
- * is connected, the appropriate ship mode (battery cutoff) command, and the
- * charge/discharge FETs status.
- *
- * Ship mode (battery cutoff) requires 2 writes to the appropriate smart battery
- * register. For some batteries, the charge/discharge FET bits are set when
- * charging/discharging is active, in other types, these bits set mean that
- * charging/discharging is disabled. Therefore, in addition to the mask for
- * these bits, a disconnect value must be specified. Note that for TI fuel
- * gauge, the charge/discharge FET status is found in Operation Status (0x54),
- * but a read of Manufacturer Access (0x00) will return the lower 16 bits of
- * Operation status which contains the FET status bits.
- *
- * The assumption for battery types supported is that the charge/discharge FET
- * status can be read with a sb_read() command and therefore, only the register
- * address, mask, and disconnect value need to be provided.
- */
-const struct board_batt_params board_battery_info[] = {
- /* AP18F4M */
- [BATTERY_AP18F4M] = {
- .fuel_gauge = {
- .manuf_name = "Murata KT00404001",
- .ship_mode = {
- .reg_addr = 0x3A,
- .reg_data = { 0xC574, 0xC574 },
- },
- .fet = {
- .reg_addr = 0x0,
- .reg_mask = 0x2000,
- .disconnect_val = 0x2000,
- }
- },
- .batt_info = {
- .voltage_max = 8700,
- .voltage_normal = 7600,
- .voltage_min = 5500,
- .precharge_current = 256,
- .start_charging_min_c = 0,
- .start_charging_max_c = 50,
- .charging_min_c = 0,
- .charging_max_c = 60,
- .discharging_min_c = -20,
- .discharging_max_c = 75,
- },
- },
-};
-BUILD_ASSERT(ARRAY_SIZE(board_battery_info) == BATTERY_TYPE_COUNT);
-
-const enum battery_type DEFAULT_BATTERY_TYPE = BATTERY_AP18F4M;
diff --git a/board/trembyle/board.c b/board/trembyle/board.c
deleted file mode 100644
index 89a62f3411..0000000000
--- a/board/trembyle/board.c
+++ /dev/null
@@ -1,530 +0,0 @@
-/* Copyright 2019 The Chromium OS Authors. All rights reserved.
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/* Trembyle board configuration */
-
-#include "adc.h"
-#include "button.h"
-#include "charger.h"
-#include "cbi_ec_fw_config.h"
-#include "driver/accelgyro_bmi_common.h"
-#include "driver/accel_kionix.h"
-#include "driver/accel_kx022.h"
-#include "driver/retimer/pi3dpx1207.h"
-#include "driver/retimer/pi3hdx1204.h"
-#include "driver/retimer/ps8811.h"
-#include "driver/temp_sensor/sb_tsi.h"
-#include "driver/usb_mux/amd_fp5.h"
-#include "extpower.h"
-#include "fan.h"
-#include "fan_chip.h"
-#include "gpio.h"
-#include "hooks.h"
-#include "lid_switch.h"
-#include "power.h"
-#include "power_button.h"
-#include "pwm.h"
-#include "pwm_chip.h"
-#include "switch.h"
-#include "system.h"
-#include "task.h"
-#include "temp_sensor/thermistor.h"
-#include "temp_sensor.h"
-#include "usb_charge.h"
-#include "usb_mux.h"
-
-#include "gpio_list.h"
-
-#define CPRINTSUSB(format, args...) cprints(CC_USBCHARGE, format, ## args)
-#define CPRINTFUSB(format, args...) cprintf(CC_USBCHARGE, format, ## args)
-
-/* Motion sensors */
-static struct mutex g_lid_mutex;
-static struct mutex g_base_mutex;
-
-/* sensor private data */
-static struct kionix_accel_data g_kx022_data;
-static struct bmi_drv_data_t g_bmi160_data;
-
-/* TODO(gcc >= 5.0) Remove the casts to const pointer at rot_standard_ref */
-struct motion_sensor_t motion_sensors[] = {
- [LID_ACCEL] = {
- .name = "Lid Accel",
- .active_mask = SENSOR_ACTIVE_S0_S3,
- .chip = MOTIONSENSE_CHIP_KX022,
- .type = MOTIONSENSE_TYPE_ACCEL,
- .location = MOTIONSENSE_LOC_LID,
- .drv = &kionix_accel_drv,
- .mutex = &g_lid_mutex,
- .drv_data = &g_kx022_data,
- .port = I2C_PORT_SENSOR,
- .i2c_spi_addr_flags = KX022_ADDR1_FLAGS,
- .rot_standard_ref = NULL,
- .default_range = 2, /* g, enough for laptop. */
- .min_frequency = KX022_ACCEL_MIN_FREQ,
- .max_frequency = KX022_ACCEL_MAX_FREQ,
- .config = {
- /* EC use accel for angle detection */
- [SENSOR_CONFIG_EC_S0] = {
- .odr = 10000 | ROUND_UP_FLAG,
- .ec_rate = 100,
- },
- /* EC use accel for angle detection */
- [SENSOR_CONFIG_EC_S3] = {
- .odr = 10000 | ROUND_UP_FLAG,
- },
- },
- },
-
- [BASE_ACCEL] = {
- .name = "Base Accel",
- .active_mask = SENSOR_ACTIVE_S0_S3,
- .chip = MOTIONSENSE_CHIP_BMI160,
- .type = MOTIONSENSE_TYPE_ACCEL,
- .location = MOTIONSENSE_LOC_BASE,
- .drv = &bmi160_drv,
- .mutex = &g_base_mutex,
- .drv_data = &g_bmi160_data,
- .port = I2C_PORT_SENSOR,
- .i2c_spi_addr_flags = BMI160_ADDR0_FLAGS,
- .default_range = 4, /* g, to meet CDD 7.3.1/C-1-4 reqs.*/
- .rot_standard_ref = NULL,
- .min_frequency = BMI_ACCEL_MIN_FREQ,
- .max_frequency = BMI_ACCEL_MAX_FREQ,
- .config = {
- /* EC use accel for angle detection */
- [SENSOR_CONFIG_EC_S0] = {
- .odr = 10000 | ROUND_UP_FLAG,
- .ec_rate = 100,
- },
- /* EC use accel for angle detection */
- [SENSOR_CONFIG_EC_S3] = {
- .odr = 10000 | ROUND_UP_FLAG,
- },
- },
- },
-
- [BASE_GYRO] = {
- .name = "Base Gyro",
- .active_mask = SENSOR_ACTIVE_S0_S3,
- .chip = MOTIONSENSE_CHIP_BMI160,
- .type = MOTIONSENSE_TYPE_GYRO,
- .location = MOTIONSENSE_LOC_BASE,
- .drv = &bmi160_drv,
- .mutex = &g_base_mutex,
- .drv_data = &g_bmi160_data,
- .port = I2C_PORT_SENSOR,
- .i2c_spi_addr_flags = BMI160_ADDR0_FLAGS,
- .default_range = 1000, /* dps */
- .rot_standard_ref = NULL,
- .min_frequency = BMI_GYRO_MIN_FREQ,
- .max_frequency = BMI_GYRO_MAX_FREQ,
- },
-};
-
-unsigned int motion_sensor_count = ARRAY_SIZE(motion_sensors);
-
-const struct power_signal_info power_signal_list[] = {
- [X86_SLP_S3_N] = {
- .gpio = GPIO_PCH_SLP_S3_L,
- .flags = POWER_SIGNAL_ACTIVE_HIGH,
- .name = "SLP_S3_DEASSERTED",
- },
- [X86_SLP_S5_N] = {
- .gpio = GPIO_PCH_SLP_S5_L,
- .flags = POWER_SIGNAL_ACTIVE_HIGH,
- .name = "SLP_S5_DEASSERTED",
- },
- [X86_S0_PGOOD] = {
- .gpio = GPIO_S0_PGOOD,
- .flags = POWER_SIGNAL_ACTIVE_HIGH,
- .name = "S0_PGOOD",
- },
- [X86_S5_PGOOD] = {
- .gpio = GPIO_S5_PGOOD,
- .flags = POWER_SIGNAL_ACTIVE_HIGH,
- .name = "S5_PGOOD",
- },
-};
-BUILD_ASSERT(ARRAY_SIZE(power_signal_list) == POWER_SIGNAL_COUNT);
-
-const struct pwm_t pwm_channels[] = {
- [PWM_CH_KBLIGHT] = {
- .channel = 3,
- .flags = PWM_CONFIG_DSLEEP,
- .freq = 100,
- },
- [PWM_CH_FAN] = {
- .channel = 2,
- .flags = PWM_CONFIG_OPEN_DRAIN,
- .freq = 25000,
- },
-};
-BUILD_ASSERT(ARRAY_SIZE(pwm_channels) == PWM_CH_COUNT);
-
-/* MFT channels. These are logically separate from pwm_channels. */
-const struct mft_t mft_channels[] = {
- [MFT_CH_0] = {
- .module = NPCX_MFT_MODULE_1,
- .clk_src = TCKC_LFCLK,
- .pwm_id = PWM_CH_FAN,
- },
-};
-BUILD_ASSERT(ARRAY_SIZE(mft_channels) == MFT_CH_COUNT);
-
-const int usb_port_enable[USBA_PORT_COUNT] = {
- IOEX_EN_USB_A0_5V,
- IOEX_EN_USB_A1_5V_DB,
-};
-
-const struct pi3hdx1204_tuning pi3hdx1204_tuning = {
- .eq_ch0_ch1_offset = PI3HDX1204_EQ_DB710,
- .eq_ch2_ch3_offset = PI3HDX1204_EQ_DB710,
- .vod_offset = PI3HDX1204_VOD_130_ALL_CHANNELS,
- .de_offset = PI3HDX1204_DE_DB_MINUS5,
-};
-
-/*****************************************************************************
- * Board suspend / resume
- */
-#define PS8811_ACCESS_RETRIES 2
-
-static void board_chipset_resume(void)
-{
- int rv;
- int retry;
-
- /* Turn on the retimers */
- ioex_set_level(IOEX_USB_A0_RETIMER_EN, 1);
- ioex_set_level(IOEX_USB_A1_RETIMER_EN, 1);
-
- /* USB-A0 can run with default settings */
- for (retry = 0; retry < PS8811_ACCESS_RETRIES; ++retry) {
- int val;
-
- rv = i2c_read8(I2C_PORT_USBA0,
- PS8811_I2C_ADDR_FLAGS3 + PS8811_REG_PAGE1,
- PS8811_REG1_USB_BEQ_LEVEL, &val);
- if (!rv)
- break;
- }
- if (rv) {
- ioex_set_level(IOEX_USB_A0_RETIMER_EN, 0);
- CPRINTSUSB("A0: PS8811 not detected");
- }
-
- /* USB-A1 needs to increase gain to get over MB/DB connector */
- for (retry = 0; retry < PS8811_ACCESS_RETRIES; ++retry) {
- rv = i2c_write8(I2C_PORT_USBA1,
- PS8811_I2C_ADDR_FLAGS3 + PS8811_REG_PAGE1,
- PS8811_REG1_USB_BEQ_LEVEL,
- PS8811_BEQ_I2C_LEVEL_UP_13DB |
- PS8811_BEQ_PIN_LEVEL_UP_18DB);
- if (!rv)
- break;
- }
- if (rv) {
- ioex_set_level(IOEX_USB_A1_RETIMER_EN, 0);
- CPRINTSUSB("A1: PS8811 not detected");
- }
-
- if (ec_config_has_hdmi_retimer_pi3hdx1204()) {
- pi3hdx1204_enable(I2C_PORT_TCPC1,
- PI3HDX1204_I2C_ADDR_FLAGS,
- 1);
- }
-}
-DECLARE_HOOK(HOOK_CHIPSET_RESUME, board_chipset_resume, HOOK_PRIO_DEFAULT);
-
-static void board_chipset_suspend(void)
-{
- ioex_set_level(IOEX_USB_A0_RETIMER_EN, 0);
- ioex_set_level(IOEX_USB_A1_RETIMER_EN, 0);
-
- if (ec_config_has_hdmi_retimer_pi3hdx1204()) {
- pi3hdx1204_enable(I2C_PORT_TCPC1,
- PI3HDX1204_I2C_ADDR_FLAGS,
- 0);
- }
-}
-DECLARE_HOOK(HOOK_CHIPSET_SUSPEND, board_chipset_suspend, HOOK_PRIO_DEFAULT);
-
-/*****************************************************************************
- * USB-C MUX/Retimer dynamic configuration
- */
-static void setup_mux(void)
-{
- if (ec_config_has_usbc1_retimer_ps8802()) {
- /*
- * Main MUX is PS8802, secondary MUX is modified FP5
- *
- * Replace usb_muxes[USBC_PORT_C1] with the PS8802
- * table entry.
- */
- memcpy(&usb_muxes[USBC_PORT_C1],
- &usbc1_ps8802,
- sizeof(struct usb_mux));
-
- /* Set the AMD FP5 as the secondary MUX */
- usb_muxes[USBC_PORT_C1].next_mux = &usbc1_amd_fp5_usb_mux;
-
- /* Don't have the AMD FP5 flip */
- usbc1_amd_fp5_usb_mux.flags = USB_MUX_FLAG_SET_WITHOUT_FLIP;
-
- } else if (ec_config_has_usbc1_retimer_ps8818()) {
- /*
- * Main MUX is FP5, secondary MUX is PS8818
- *
- * Replace usb_muxes[USBC_PORT_C1] with the AMD FP5
- * table entry.
- */
- memcpy(&usb_muxes[USBC_PORT_C1],
- &usbc1_amd_fp5_usb_mux,
- sizeof(struct usb_mux));
-
- /* Set the PS8818 as the secondary MUX */
- usb_muxes[USBC_PORT_C1].next_mux = &usbc1_ps8818;
- }
-}
-
-const struct pi3dpx1207_usb_control pi3dpx1207_controls[] = {
- [USBC_PORT_C0] = {
- .enable_gpio = IOEX_USB_C0_DATA_EN,
- .dp_enable_gpio = GPIO_USB_C0_IN_HPD,
- },
- [USBC_PORT_C1] = {
- },
-};
-BUILD_ASSERT(ARRAY_SIZE(pi3dpx1207_controls) == USBC_PORT_COUNT);
-
-const struct usb_mux usbc0_pi3dpx1207_usb_retimer = {
- .usb_port = USBC_PORT_C0,
- .i2c_port = I2C_PORT_TCPC0,
- .i2c_addr_flags = PI3DPX1207_I2C_ADDR_FLAGS,
- .driver = &pi3dpx1207_usb_retimer,
-};
-
-struct usb_mux usb_muxes[] = {
- [USBC_PORT_C0] = {
- .usb_port = USBC_PORT_C0,
- .i2c_port = I2C_PORT_USB_AP_MUX,
- .i2c_addr_flags = AMD_FP5_MUX_I2C_ADDR_FLAGS,
- .driver = &amd_fp5_usb_mux_driver,
- .next_mux = &usbc0_pi3dpx1207_usb_retimer,
- },
- [USBC_PORT_C1] = {
- /* Filled in dynamically at startup */
- },
-};
-BUILD_ASSERT(ARRAY_SIZE(usb_muxes) == USBC_PORT_COUNT);
-
-/*****************************************************************************
- * Use FW_CONFIG to set correct configuration.
- */
-
-int board_usbc1_retimer_inhpd = IOEX_USB_C1_HPD_IN_DB;
-
-static void setup_v0_charger(void)
-{
- chg_chips[0].i2c_port = I2C_PORT_CHARGER_V0;
-}
-/*
- * Use HOOK_PRIO_INIT_I2C so we re-map before charger_chips_init()
- * talks to the charger.
- */
-DECLARE_HOOK(HOOK_INIT, setup_v0_charger, HOOK_PRIO_INIT_I2C);
-
-static void setup_fw_config(void)
-{
- /* Enable Gyro interrupts */
- gpio_enable_interrupt(GPIO_6AXIS_INT_L);
-
- setup_mux();
-
- if (ec_config_has_mst_hub_rtd2141b())
- ioex_enable_interrupt(IOEX_MST_HPD_OUT);
-
- if (ec_config_has_hdmi_conn_hpd())
- ioex_enable_interrupt(IOEX_HDMI_CONN_HPD_3V3_DB);
-}
-/* Use HOOK_PRIO_INIT_I2C + 2 to be after ioex_init(). */
-DECLARE_HOOK(HOOK_INIT, setup_fw_config, HOOK_PRIO_INIT_I2C + 2);
-
-/*****************************************************************************
- * Fan
- */
-
-/* Physical fans. These are logically separate from pwm_channels. */
-const struct fan_conf fan_conf_0 = {
- .flags = FAN_USE_RPM_MODE,
- .ch = MFT_CH_0, /* Use MFT id to control fan */
- .pgood_gpio = -1,
- .enable_gpio = -1,
-};
-const struct fan_rpm fan_rpm_0 = {
- .rpm_min = 3000,
- .rpm_start = 3000,
- .rpm_max = 4900,
-};
-const struct fan_t fans[] = {
- [FAN_CH_0] = {
- .conf = &fan_conf_0,
- .rpm = &fan_rpm_0,
- },
-};
-BUILD_ASSERT(ARRAY_SIZE(fans) == FAN_CH_COUNT);
-
-int board_get_temp(int idx, int *temp_k)
-{
- int mv;
- int temp_c;
- enum adc_channel channel;
-
- /* idx is the sensor index set in board temp_sensors[] */
- switch (idx) {
- case TEMP_SENSOR_CHARGER:
- channel = ADC_TEMP_SENSOR_CHARGER;
- break;
- case TEMP_SENSOR_SOC:
- /* thermistor is not powered in G3 */
- if (chipset_in_state(CHIPSET_STATE_HARD_OFF))
- return EC_ERROR_NOT_POWERED;
-
- channel = ADC_TEMP_SENSOR_SOC;
- break;
- default:
- return EC_ERROR_INVAL;
- }
-
- mv = adc_read_channel(channel);
- if (mv < 0)
- return EC_ERROR_INVAL;
-
- temp_c = thermistor_linear_interpolate(mv, &thermistor_info);
- *temp_k = C_TO_K(temp_c);
- return EC_SUCCESS;
-}
-
-const struct adc_t adc_channels[] = {
- [ADC_TEMP_SENSOR_CHARGER] = {
- .name = "CHARGER",
- .input_ch = NPCX_ADC_CH2,
- .factor_mul = ADC_MAX_VOLT,
- .factor_div = ADC_READ_MAX + 1,
- .shift = 0,
- },
- [ADC_TEMP_SENSOR_SOC] = {
- .name = "SOC",
- .input_ch = NPCX_ADC_CH3,
- .factor_mul = ADC_MAX_VOLT,
- .factor_div = ADC_READ_MAX + 1,
- .shift = 0,
- },
-};
-BUILD_ASSERT(ARRAY_SIZE(adc_channels) == ADC_CH_COUNT);
-
-const struct temp_sensor_t temp_sensors[] = {
- [TEMP_SENSOR_CHARGER] = {
- .name = "Charger",
- .type = TEMP_SENSOR_TYPE_BOARD,
- .read = board_get_temp,
- .idx = TEMP_SENSOR_CHARGER,
- },
- [TEMP_SENSOR_SOC] = {
- .name = "SOC",
- .type = TEMP_SENSOR_TYPE_BOARD,
- .read = board_get_temp,
- .idx = TEMP_SENSOR_SOC,
- },
- [TEMP_SENSOR_CPU] = {
- .name = "CPU",
- .type = TEMP_SENSOR_TYPE_CPU,
- .read = sb_tsi_get_val,
- .idx = 0,
- },
-};
-BUILD_ASSERT(ARRAY_SIZE(temp_sensors) == TEMP_SENSOR_COUNT);
-
-const static struct ec_thermal_config thermal_thermistor = {
- .temp_host = {
- [EC_TEMP_THRESH_HIGH] = C_TO_K(90),
- [EC_TEMP_THRESH_HALT] = C_TO_K(92),
- },
- .temp_host_release = {
- [EC_TEMP_THRESH_HIGH] = C_TO_K(80),
- },
- .temp_fan_off = C_TO_K(25),
- .temp_fan_max = C_TO_K(58),
-};
-
-const static struct ec_thermal_config thermal_cpu = {
- .temp_host = {
- [EC_TEMP_THRESH_HIGH] = C_TO_K(90),
- [EC_TEMP_THRESH_HALT] = C_TO_K(92),
- },
- .temp_host_release = {
- [EC_TEMP_THRESH_HIGH] = C_TO_K(80),
- },
- .temp_fan_off = C_TO_K(25),
- .temp_fan_max = C_TO_K(58),
-};
-
-struct ec_thermal_config thermal_params[TEMP_SENSOR_COUNT];
-
-static void setup_fans(void)
-{
- thermal_params[TEMP_SENSOR_CHARGER] = thermal_thermistor;
- thermal_params[TEMP_SENSOR_SOC] = thermal_thermistor;
- thermal_params[TEMP_SENSOR_CPU] = thermal_cpu;
-}
-DECLARE_HOOK(HOOK_INIT, setup_fans, HOOK_PRIO_DEFAULT);
-
-/*****************************************************************************
- * MST hub
- */
-
-static void mst_hpd_handler(void)
-{
- int hpd = 0;
-
- /*
- * Ensure level on GPIO_DP1_HPD matches IOEX_MST_HPD_OUT, in case
- * we got out of sync.
- */
- ioex_get_level(IOEX_MST_HPD_OUT, &hpd);
- gpio_set_level(GPIO_DP1_HPD, hpd);
- ccprints("MST HPD %d", hpd);
-}
-DECLARE_DEFERRED(mst_hpd_handler);
-
-void mst_hpd_interrupt(enum ioex_signal signal)
-{
- /*
- * Goal is to pass HPD through from DB OPT3 MST hub to AP's DP1.
- * Immediately invert GPIO_DP1_HPD, to pass through the edge on
- * IOEX_MST_HPD_OUT. Then check level after 2 msec debounce.
- */
- int hpd = !gpio_get_level(GPIO_DP1_HPD);
-
- gpio_set_level(GPIO_DP1_HPD, hpd);
- hook_call_deferred(&mst_hpd_handler_data, (2 * MSEC));
-}
-
-static void hdmi_hpd_handler(void)
-{
- int hpd = 0;
-
- /* Pass HPD through from DB OPT1 HDMI connector to AP's DP1. */
- ioex_get_level(IOEX_HDMI_CONN_HPD_3V3_DB, &hpd);
- gpio_set_level(GPIO_DP1_HPD, hpd);
- ccprints("HDMI HPD %d", hpd);
-}
-DECLARE_DEFERRED(hdmi_hpd_handler);
-
-void hdmi_hpd_interrupt(enum ioex_signal signal)
-{
- /* Debounce for 2 msec. */
- hook_call_deferred(&hdmi_hpd_handler_data, (2 * MSEC));
-}
diff --git a/board/trembyle/board.h b/board/trembyle/board.h
deleted file mode 100644
index bfbd829ac1..0000000000
--- a/board/trembyle/board.h
+++ /dev/null
@@ -1,218 +0,0 @@
-/* Copyright 2019 The Chromium OS Authors. All rights reserved.
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/* Trembyle board configuration */
-
-#ifndef __CROS_EC_BOARD_H
-#define __CROS_EC_BOARD_H
-
-#define VARIANT_ZORK_TREMBYLE
-
-#include <stdbool.h>
-#include "baseboard.h"
-
-#define CONFIG_USBC_RETIMER_PI3DPX1207
-
-/* Motion sensing drivers */
-#define CONFIG_ACCELGYRO_BMI160
-#define CONFIG_ACCELGYRO_BMI160_INT_EVENT \
- TASK_EVENT_MOTION_SENSOR_INTERRUPT(BASE_ACCEL)
-#define CONFIG_ACCEL_INTERRUPTS
-#define CONFIG_ACCEL_KX022
-#define CONFIG_CMD_ACCELS
-#define CONFIG_CMD_ACCEL_INFO
-#define CONFIG_TABLET_MODE
-#define CONFIG_LID_ANGLE
-#define CONFIG_LID_ANGLE_UPDATE
-#define CONFIG_LID_ANGLE_SENSOR_BASE BASE_ACCEL
-#define CONFIG_LID_ANGLE_SENSOR_LID LID_ACCEL
-
-/* GPIO mapping from board specific name to EC common name. */
-#define CONFIG_BATTERY_PRESENT_GPIO GPIO_EC_BATT_PRES_ODL
-#define CONFIG_SCI_GPIO GPIO_EC_FCH_SCI_ODL
-#define GPIO_AC_PRESENT GPIO_ACOK_OD
-#define GPIO_CPU_PROCHOT GPIO_PROCHOT_ODL
-#define GPIO_EC_INT_L GPIO_EC_AP_INT_ODL
-#define GPIO_ENABLE_BACKLIGHT_L GPIO_EC_EDP_BL_DISABLE
-#define GPIO_ENTERING_RW GPIO_EC_ENTERING_RW
-#define GPIO_KBD_KSO2 GPIO_EC_KSO_02_INV
-#define GPIO_PCH_PWRBTN_L GPIO_EC_FCH_PWR_BTN_L
-#define GPIO_PCH_RSMRST_L GPIO_EC_FCH_RSMRST_L
-#define GPIO_PCH_SLP_S3_L GPIO_SLP_S3_L
-#define GPIO_PCH_SLP_S5_L GPIO_SLP_S5_L
-#define GPIO_PCH_SYS_PWROK GPIO_EC_FCH_PWROK
-#define GPIO_PCH_WAKE_L GPIO_EC_FCH_WAKE_L
-#define GPIO_POWER_BUTTON_L GPIO_EC_PWR_BTN_ODL
-#define GPIO_S0_PGOOD GPIO_S0_PWROK_OD
-#define GPIO_S5_PGOOD GPIO_EC_PWROK_OD
-#define GPIO_SYS_RESET_L GPIO_EC_SYS_RST_L
-#define GPIO_VOLUME_DOWN_L GPIO_VOLDN_BTN_ODL
-#define GPIO_VOLUME_UP_L GPIO_VOLUP_BTN_ODL
-#define GPIO_WP_L GPIO_EC_WP_L
-#define GPIO_PACKET_MODE_EN GPIO_EC_H1_PACKET_MODE
-
-#ifndef __ASSEMBLER__
-
-enum adc_channel {
- ADC_TEMP_SENSOR_CHARGER,
- ADC_TEMP_SENSOR_SOC,
- ADC_CH_COUNT
-};
-
-enum battery_type {
- BATTERY_AP18F4M,
- BATTERY_TYPE_COUNT,
-};
-
-enum mft_channel {
- MFT_CH_0 = 0,
- /* Number of MFT channels */
- MFT_CH_COUNT,
-};
-
-enum pwm_channel {
- PWM_CH_KBLIGHT = 0,
- PWM_CH_FAN,
- PWM_CH_COUNT
-};
-
-enum temp_sensor_id {
- TEMP_SENSOR_CHARGER = 0,
- TEMP_SENSOR_SOC,
- TEMP_SENSOR_CPU,
- TEMP_SENSOR_COUNT
-};
-
-enum usba_port {
- USBA_PORT_A0 = 0,
- USBA_PORT_A1,
- USBA_PORT_COUNT
-};
-
-/*****************************************************************************
- * CBI EC FW Configuration
- */
-
-/**
- * TREMBYLE_MB_USBAC
- * USB-A0 Speed: 10 Gbps
- * Retimer: PS8811
- * USB-C0 Speed: 10 Gbps
- * Retimer: PI3DPX1207
- * TCPC: NCT3807
- * PPC: AOZ1380
- * IOEX: TCPC
- */
-enum ec_cfg_usb_mb_type {
- TREMBYLE_MB_USBAC = 0,
-};
-
-/**
- * TREMBYLE_DB_T_OPT1_USBAC_HMDI
- * USB-A1 Speed: 10 Gbps
- * Retimer: PS8811
- * USB-C1 Speed: 10 Gbps
- * Retimer: PS8818
- * TCPC: NCT3807
- * PPC: NX20P3483
- * IOEX: TCPC
- * HDMI Exists: yes
- * Retimer: PI3HDX1204
- * MST Hub: none
- *
- * TREMBYLE_DB_T_OPT2_USBAC
- * USB-A1 Speed: 10 Gbps
- * Retimer: PS8811
- * USB-C1 Speed: 10 Gbps
- * Retimer: PS8802
- * TCPC: NCT3807
- * PPC: NX20P3483
- * IOEX: TCPC
- * HDMI Exists: no
- * Retimer: none
- * MST Hub: none
- *
- * TREMBYLE_DB_T_OPT3_USBAC_HDMI_MSTHUB
- * USB-A1 Speed: 10 Gbps
- * Retimer: PS8811
- * USB-C1 Speed: 10 Gbps
- * Retimer: PS8802
- * TCPC: NCT3807
- * PPC: NX20P3483
- * IOEX: TCPC
- * HDMI Exists: yes
- * Retimer: none
- * MST Hub: RTD2141B
- */
-enum ec_cfg_usb_db_type {
- TREMBYLE_DB_T_OPT1_USBAC_HMDI = 0,
- TREMBYLE_DB_T_OPT2_USBAC = 1,
- TREMBYLE_DB_T_OPT3_USBAC_HDMI_MSTHUB = 2,
-};
-
-#include "cbi_ec_fw_config.h"
-
-#define HAS_USBC1_RETIMER_PS8802 \
- (BIT(TREMBYLE_DB_T_OPT2_USBAC) | \
- BIT(TREMBYLE_DB_T_OPT3_USBAC_HDMI_MSTHUB))
-
-static inline bool ec_config_has_usbc1_retimer_ps8802(void)
-{
- return !!(BIT(ec_config_get_usb_db()) &
- HAS_USBC1_RETIMER_PS8802);
-}
-
-#define HAS_USBC1_RETIMER_PS8818 \
- (BIT(TREMBYLE_DB_T_OPT1_USBAC_HMDI))
-
-static inline bool ec_config_has_usbc1_retimer_ps8818(void)
-{
- return !!(BIT(ec_config_get_usb_db()) &
- HAS_USBC1_RETIMER_PS8818);
-}
-
-#define HAS_HDMI_RETIMER_PI3HDX1204 \
- (BIT(TREMBYLE_DB_T_OPT1_USBAC_HMDI))
-
-static inline bool ec_config_has_hdmi_retimer_pi3hdx1204(void)
-{
- return !!(BIT(ec_config_get_usb_db()) &
- HAS_HDMI_RETIMER_PI3HDX1204);
-}
-
-#define HAS_MST_HUB_RTD2141B \
- (BIT(TREMBYLE_DB_T_OPT3_USBAC_HDMI_MSTHUB))
-
-static inline bool ec_config_has_mst_hub_rtd2141b(void)
-{
- return !!(BIT(ec_config_get_usb_db()) &
- HAS_MST_HUB_RTD2141B);
-}
-
-#define HAS_HDMI_CONN_HPD \
- (BIT(TREMBYLE_DB_T_OPT1_USBAC_HMDI))
-
-static inline bool ec_config_has_hdmi_conn_hpd(void)
-{
- return !!(BIT(ec_config_get_usb_db()) &
- HAS_HDMI_CONN_HPD);
-}
-
-#define PORT_TO_HPD(port) ((port == 0) \
- ? GPIO_USB_C0_HPD \
- : (ec_config_has_usbc1_retimer_ps8802()) \
- ? GPIO_DP1_HPD \
- : GPIO_DP2_HPD)
-
-extern const struct usb_mux usbc0_pi3dpx1207_usb_retimer;
-extern const struct usb_mux usbc1_ps8802;
-extern const struct usb_mux usbc1_ps8818;
-extern struct usb_mux usbc1_amd_fp5_usb_mux;
-
-void hdmi_hpd_interrupt(enum ioex_signal signal);
-
-#endif /* !__ASSEMBLER__ */
-
-#endif /* __CROS_EC_BOARD_H */
diff --git a/board/trembyle/build.mk b/board/trembyle/build.mk
deleted file mode 100644
index 4ca0cbd96f..0000000000
--- a/board/trembyle/build.mk
+++ /dev/null
@@ -1,15 +0,0 @@
-# -*- makefile -*-
-# Copyright 2019 The Chromium OS Authors. All rights reserved.
-# Use of this source code is governed by a BSD-style license that can be
-# found in the LICENSE file.
-#
-# Board specific files build
-#
-
-CHIP:=npcx
-CHIP_FAMILY:=npcx7
-CHIP_VARIANT:=npcx7m7wc
-BASEBOARD:=zork
-
-board-y=board.o led.o
-board-$(CONFIG_BATTERY_SMART)+=battery.o
diff --git a/board/trembyle/ec.tasklist b/board/trembyle/ec.tasklist
deleted file mode 100644
index 41b83cf4f3..0000000000
--- a/board/trembyle/ec.tasklist
+++ /dev/null
@@ -1,26 +0,0 @@
-/* Copyright 2019 The Chromium OS Authors. All rights reserved.
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/*
- * See CONFIG_TASK_LIST in config.h for details.
- */
-
-#define CONFIG_TASK_LIST \
- TASK_ALWAYS(HOOKS, hook_task, NULL, LARGER_TASK_STACK_SIZE) \
- TASK_ALWAYS(CHG_RAMP, chg_ramp_task, NULL, TASK_STACK_SIZE) \
- TASK_ALWAYS(USB_CHG_P0, usb_charger_task, 0, TASK_STACK_SIZE) \
- TASK_ALWAYS(USB_CHG_P1, usb_charger_task, 1, TASK_STACK_SIZE) \
- TASK_ALWAYS(CHARGER, charger_task, NULL, VENTI_TASK_STACK_SIZE) \
- TASK_ALWAYS(MOTIONSENSE, motion_sense_task, NULL, VENTI_TASK_STACK_SIZE) \
- TASK_NOTEST(CHIPSET, chipset_task, NULL, VENTI_TASK_STACK_SIZE) \
- TASK_NOTEST(KEYPROTO, keyboard_protocol_task, NULL, TASK_STACK_SIZE) \
- TASK_ALWAYS(HOSTCMD, host_command_task, NULL, LARGER_TASK_STACK_SIZE) \
- TASK_ALWAYS(CONSOLE, console_task, NULL, VENTI_TASK_STACK_SIZE) \
- TASK_ALWAYS(POWERBTN, power_button_task, NULL, VENTI_TASK_STACK_SIZE) \
- TASK_NOTEST(KEYSCAN, keyboard_scan_task, NULL, TASK_STACK_SIZE) \
- TASK_ALWAYS(PD_C0, pd_task, NULL, VENTI_TASK_STACK_SIZE) \
- TASK_ALWAYS(PD_C1, pd_task, NULL, VENTI_TASK_STACK_SIZE) \
- TASK_ALWAYS(PD_INT_C0, pd_interrupt_handler_task, 0, TASK_STACK_SIZE) \
- TASK_ALWAYS(PD_INT_C1, pd_interrupt_handler_task, 1, TASK_STACK_SIZE)
diff --git a/board/trembyle/gpio.inc b/board/trembyle/gpio.inc
deleted file mode 100644
index 6cc3e6fe09..0000000000
--- a/board/trembyle/gpio.inc
+++ /dev/null
@@ -1,141 +0,0 @@
-/* -*- mode:c -*-
- *
- * Copyright 2019 The Chromium OS Authors. All rights reserved.
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/* Declare symbolic names for all the GPIOs that we care about.
- * Note: Those with interrupt handlers must be declared first. */
-
-GPIO_INT(USB_C0_TCPC_INT_ODL, PIN(3, 4), GPIO_INT_FALLING, tcpc_alert_event)
-GPIO_INT(USB_C1_TCPC_INT_ODL, PIN(F, 1), GPIO_INT_FALLING, tcpc_alert_event)
-GPIO_INT(USB_C0_PPC_FAULT_ODL, PIN(6, 3), GPIO_INT_FALLING, ppc_interrupt)
-GPIO_INT(USB_C1_PPC_INT_ODL, PIN(D, 4), GPIO_INT_FALLING, ppc_interrupt)
-GPIO_INT(USB_C0_BC12_INT_ODL, PIN(9, 3), GPIO_INT_FALLING | GPIO_PULL_UP, bc12_interrupt)
-GPIO_INT(USB_C1_BC12_INT_ODL, PIN(A, 4), GPIO_INT_FALLING | GPIO_PULL_UP, bc12_interrupt)
-GPIO_INT(SLP_S3_L, PIN(7, 4), GPIO_INT_BOTH, power_signal_interrupt)
-GPIO_INT(SLP_S5_L, PIN(E, 0), GPIO_INT_BOTH, power_signal_interrupt)
-GPIO_INT(S0_PWROK_OD, PIN(5, 6), GPIO_INT_BOTH, power_signal_interrupt)
-GPIO_INT(EC_PWROK_OD, PIN(3, 7), GPIO_INT_BOTH, power_signal_interrupt)
-GPIO_INT(EC_PWR_BTN_ODL, PIN(0, 1), GPIO_INT_BOTH, power_button_interrupt)
-GPIO_INT(LID_OPEN, PIN(D, 2), GPIO_INT_BOTH | GPIO_HIB_WAKE_HIGH, lid_interrupt)
-GPIO_INT(ACOK_OD, PIN(0, 0), GPIO_INT_BOTH | GPIO_HIB_WAKE_HIGH, extpower_interrupt)
-GPIO_INT(EC_WP_L, PIN(5, 0), GPIO_INT_BOTH, switch_interrupt)
-GPIO_INT(VOLDN_BTN_ODL, PIN(A, 6), GPIO_INT_BOTH | GPIO_PULL_UP, button_interrupt)
-GPIO_INT(VOLUP_BTN_ODL, PIN(9, 5), GPIO_INT_BOTH | GPIO_PULL_UP, button_interrupt)
-GPIO_INT(6AXIS_INT_L, PIN(A, 0), GPIO_INT_FALLING | GPIO_PULL_UP, bmi160_interrupt)
-
-/* GPIO_INT_BOTH is required for PSL wake from hibernate, but we don't need an interrupt handler. */
-GPIO(EC_RST_ODL, PIN(0, 2), GPIO_INT_BOTH | GPIO_HIB_WAKE_HIGH)
-
-GPIO(3AXIS_INT_L, PIN(9, 6), GPIO_INPUT | GPIO_PULL_DOWN) /* 3 Axis Accel */
-GPIO(CCD_MODE_ODL, PIN(C, 6), GPIO_INPUT) /* Case Closed Debug Mode */
-GPIO(PROCHOT_ODL, PIN(D, 5), GPIO_ODR_HIGH) /* PROCHOT to SOC */
-GPIO(EC_BATT_PRES_ODL, PIN(4, 1), GPIO_INPUT) /* Battery Present */
-GPIO(EC_AP_INT_ODL, PIN(A, 3), GPIO_ODR_HIGH) /* Sensor MKBP event to SOC */
-GPIO(EN_PWR_A, PIN(B, 7), GPIO_OUT_LOW) /* Enable Power */
-GPIO(EC_EDP_BL_DISABLE, PIN(A, 2), GPIO_OUT_HIGH) /* Enable Backlight */
-GPIO(EC_ENTERING_RW, PIN(E, 5), GPIO_OUT_LOW) /* EC Entering RW */
-GPIO(EC_FCH_PWR_BTN_L, PIN(6, 2), GPIO_OUT_HIGH) /* Power Button to SOC */
-GPIO(EC_FCH_RSMRST_L, PIN(A, 1), GPIO_OUT_LOW) /* RSMRST# to SOC */
-GPIO(EC_FCH_PWROK, PIN(D, 3), GPIO_OUT_LOW) /* Power OK to SOC */
-GPIO(EC_FCH_WAKE_L, PIN(0, 3), GPIO_OUT_HIGH) /* Wake SOC */
-GPIO(EC_FCH_SCI_ODL, PIN(7, 6), GPIO_ODR_HIGH) /* SCI to SOC */
-GPIO(EC_SYS_RST_L, PIN(C, 7), GPIO_ODR_HIGH) /* Cold Reset to SOC */
-GPIO(USB_C0_TCPC_RST_L, PIN(E, 1), GPIO_OUT_HIGH) /* C0 TCPC Reset */
-GPIO(USB_C1_TCPC_RST_L, PIN(F, 0), GPIO_OUT_HIGH) /* C1 TCPC Reset */
-GPIO(USB_C0_HPD, PIN(F, 5), GPIO_OUT_LOW) /* C0 DP Hotplug Detect */
-GPIO(USB_C0_IN_HPD, PIN(7, 3), GPIO_OUT_LOW) /* C0 IN Hotplug Detect */
-GPIO(DP1_HPD, PIN(F, 4), GPIO_OUT_LOW) /* C1 DP Hotplug Detect */
-GPIO(DP2_HPD, PIN(C, 1), GPIO_OUT_LOW) /* C1 DP Hotplug Detect */
-GPIO(EC_H1_PACKET_MODE, PIN(8, 6), GPIO_OUT_LOW) /* H1 Packet Mode */
-GPIO(EN_PWR_TOUCHPAD_PS2, PIN(C, 2), GPIO_INPUT) /* Touchpad Power */
-
-UNIMPLEMENTED(PCH_SMI_L)
-
-GPIO(LED_FULL_L, PIN(6, 0), GPIO_OUT_HIGH)
-GPIO(LED_CHRG_L, PIN(C, 0), GPIO_OUT_HIGH)
-
-IOEX_INT(USB_C0_SBU_FAULT_ODL, EXPIN(USBC_PORT_C0, 1, 2), GPIO_INT_FALLING, sbu_fault_interrupt)
-IOEX_INT(USB_C1_SBU_FAULT_DB_ODL, EXPIN(USBC_PORT_C1, 1, 2), GPIO_INT_FALLING, sbu_fault_interrupt)
-IOEX_INT(HDMI_CONN_HPD_3V3_DB, EXPIN(USBC_PORT_C1, 1, 0), GPIO_INT_BOTH, hdmi_hpd_interrupt)
-IOEX_INT(MST_HPD_OUT, EXPIN(USBC_PORT_C1, 0, 3), GPIO_INT_BOTH, mst_hpd_interrupt)
-
-IOEX(USB_A0_RETIMER_EN, EXPIN(USBC_PORT_C0, 0, 0), GPIO_OUT_LOW) /* A0 Retimer Enable */
-IOEX(USB_A0_RETIMER_RST, EXPIN(USBC_PORT_C0, 0, 1), GPIO_OUT_LOW) /* A0 Retimer Reset */
-IOEX(USB_C0_FAULT_ODL, EXPIN(USBC_PORT_C0, 0, 3), GPIO_ODR_HIGH) /* C0 Fault to SOC */
-IOEX(USB_C0_TCPC_FASTSW_CTL_EN, EXPIN(USBC_PORT_C0, 0, 4), GPIO_OUT_LOW) /* C0 FastSwitch Control */
-IOEX(USB_C1_FAULT_ODL, EXPIN(USBC_PORT_C0, 1, 0), GPIO_ODR_HIGH) /* C1 Fault to SOC */
-IOEX(USB_C0_PPC_ILIM_3A_EN, EXPIN(USBC_PORT_C0, 1, 1), GPIO_OUT_LOW) /* C0 3A Current Limit Enable */
-IOEX(KB_BL_EN, EXPIN(USBC_PORT_C0, 1, 3), GPIO_OUT_LOW) /* KB Backlight Enable */
-IOEX(USB_C0_DATA_EN, EXPIN(USBC_PORT_C0, 1, 4), GPIO_OUT_LOW) /* C0 Data Enable */
-IOEX(EN_USB_A0_5V, EXPIN(USBC_PORT_C0, 1, 5), GPIO_OUT_LOW) /* A0 5V Source Enable */
-IOEX(USB_A0_CHARGE_EN_L, EXPIN(USBC_PORT_C0, 1, 6), GPIO_OUT_HIGH) /* A0 5V High Current Enable */
-
-IOEX(USB_A1_RETIMER_EN, EXPIN(USBC_PORT_C1, 0, 0), GPIO_OUT_LOW) /* A1 Retimer Enable */
-IOEX(USB_A1_RETIMER_RST_DB, EXPIN(USBC_PORT_C1, 0, 1), GPIO_OUT_LOW) /* A1 Retimer Reset */
-IOEX(USB_C1_HPD_IN_DB, EXPIN(USBC_PORT_C1, 0, 2), GPIO_OUT_LOW) /* C1 HPD */
-IOEX(USB_C1_TCPC_FASTSW_CTL_EN, EXPIN(USBC_PORT_C1, 0, 4), GPIO_OUT_LOW) /* C1 FastSwitch Control */
-IOEX(USB_C1_MUX_RST_DB, EXPIN(USBC_PORT_C1, 1, 1), GPIO_OUT_LOW) /* C1 Mux Reset */
-IOEX(USB_C1_PPC_EN_L, EXPIN(USBC_PORT_C1, 1, 3), GPIO_OUT_LOW) /* C1 PPC Enable */
-IOEX(HDMI_DATA_EN_DB, EXPIN(USBC_PORT_C1, 1, 4), GPIO_OUT_HIGH) /* HDMI Retimer Enable */
-IOEX(USB_C1_DATA_EN, EXPIN(USBC_PORT_C1, 1, 5), GPIO_OUT_HIGH) /* C1 Retimer Enable */
-IOEX(EN_USB_A1_5V_DB, EXPIN(USBC_PORT_C1, 1, 6), GPIO_OUT_LOW) /* A1 5V Source Enable */
-IOEX(USB_A1_CHARGE_EN_DB_L, EXPIN(USBC_PORT_C1, 1, 7), GPIO_OUT_HIGH) /* A1 5V High Current Enable */
-
-/*
- * The NPCX LPC driver configures and controls SCI, so PCH_SCI_ODL [PIN(7, 6)]
- * is not defined here as GPIO.
- */
-
-/* I2C pins - these will be reconfigured for alternate function below */
-GPIO(EC_I2C_USB_A0_C0_SCL, PIN(B, 5), GPIO_INPUT)
-GPIO(EC_I2C_USB_A0_C0_SDA, PIN(B, 4), GPIO_INPUT)
-GPIO(EC_I2C_USB_A1_C1_SCL, PIN(9, 0), GPIO_INPUT)
-GPIO(EC_I2C_USB_A1_C1_SDA, PIN(8, 7), GPIO_INPUT)
-GPIO(EC_I2C_BATT_SCL, PIN(9, 2), GPIO_INPUT)
-GPIO(EC_I2C_BATT_SDA, PIN(9, 1), GPIO_INPUT)
-GPIO(EC_I2C_USBC_AP_MUX_SCL, PIN(D, 1), GPIO_INPUT)
-GPIO(EC_I2C_USBC_AP_MUX_SDA, PIN(D, 0), GPIO_INPUT)
-GPIO(FCH_SIC_POWER_SCL, PIN(F, 3), GPIO_INPUT)
-GPIO(FCH_SID_POWER_SDA, PIN(F, 2), GPIO_INPUT)
-GPIO(EC_I2C_SENSOR_CBI_SCL, PIN(3, 3), GPIO_INPUT)
-GPIO(EC_I2C_SENSOR_CBI_SDA, PIN(3, 6), GPIO_INPUT)
-GPIO(FCH_I2C_AUDIO_SCL, PIN(E, 4), GPIO_INPUT | GPIO_SEL_1P8V)
-GPIO(FCH_I2C_AUDIO_SDA, PIN(E, 3), GPIO_INPUT | GPIO_SEL_1P8V)
-GPIO(FCH_I2C_HDMI_HUB_3V3_SCL, PIN(B, 3), GPIO_INPUT)
-GPIO(FCH_I2C_HDMI_HUB_3V3_SDA, PIN(B, 2), GPIO_INPUT)
-
-ALTERNATE(PIN_MASK(6, BIT(4) | BIT(5)), 0, MODULE_UART, 0) /* Cr50 requires no pullups. */
-
-ALTERNATE(PIN_MASK(B, BIT(4) | BIT(5)), 0, MODULE_I2C, 0) /* I2C0 */
-ALTERNATE(PIN_MASK(9, BIT(0) | BIT(1) | BIT(2)), 0, MODULE_I2C, 0) /* I2C1 SCL / I2C2 */
-ALTERNATE(PIN_MASK(8, BIT(7)), 0, MODULE_I2C, 0) /* I2C1 SDA */
-ALTERNATE(PIN_MASK(D, BIT(0) | BIT(1)), 0, MODULE_I2C, 0) /* I2C3 */
-ALTERNATE(PIN_MASK(F, BIT(2) | BIT(3)), 0, MODULE_I2C, 0) /* I2C4 */
-ALTERNATE(PIN_MASK(3, BIT(3) | BIT(6)), 0, MODULE_I2C, 0) /* I2C5 */
-ALTERNATE(PIN_MASK(E, BIT(3) | BIT(4)), 0, MODULE_I2C, 0) /* I2C6 */
-ALTERNATE(PIN_MASK(B, BIT(2) | BIT(3)), 0, MODULE_I2C, 0) /* I2C7 */
-
-ALTERNATE(PIN_MASK(4, BIT(2) | BIT(3)), 0, MODULE_ADC, 0) /* ADC2, ADC3 Temp Sensors */
-
-ALTERNATE(PIN_MASK(C, BIT(3)), 0, MODULE_PWM, 0) /* PWM0 LED */
-ALTERNATE(PIN_MASK(C, BIT(4)), 0, MODULE_PWM, 0) /* PWM2 - EC_FAN_PWM */
-ALTERNATE(PIN_MASK(8, BIT(0)), 0, MODULE_PWM, 0) /* PWM3 KB Backlight */
-ALTERNATE(PIN_MASK(4, BIT(0)), 0, MODULE_PWM, 0) /* TA1 - EC_FAN_SPEED */
-
-ALTERNATE(PIN_MASK(3, 0x03), 0, MODULE_KEYBOARD_SCAN, GPIO_INPUT) /* KSI_00-01 */
-ALTERNATE(PIN_MASK(2, 0xFC), 0, MODULE_KEYBOARD_SCAN, GPIO_INPUT) /* KSI_02-07 */
-ALTERNATE(PIN_MASK(2, 0x03), 0, MODULE_KEYBOARD_SCAN, GPIO_ODR_HIGH) /* KSO_00-01 */
-GPIO(EC_KSO_02_INV, PIN(1, 7), GPIO_OUT_LOW) /* KSO_02 inverted */
-ALTERNATE(PIN_MASK(1, 0x7F), 0, MODULE_KEYBOARD_SCAN, GPIO_ODR_HIGH) /* KSO_03-09 */
-ALTERNATE(PIN_MASK(0, 0xE0), 0, MODULE_KEYBOARD_SCAN, GPIO_ODR_HIGH) /* KSO_10-12 */
-
-/* Power Switch Logic (PSL) inputs */
-ALTERNATE(PIN_MASK(0, BIT(0) | BIT(1) | BIT(2)), 0, MODULE_PMU, 0) /* AC_PRESENT, POWER_BUTTON_L, EC_RST_ODL */
-ALTERNATE(PIN_MASK(D, BIT(2)), 0, MODULE_PMU, 0) /* LID_OPEN */
-
-ALTERNATE(PIN_MASK(A, 0xA0), 1, MODULE_WOV, 0) /* I2S_SYNC/I2S_SCLK GPIOA5/A7 */
-ALTERNATE(PIN_MASK(B, 0x01), 1, MODULE_WOV, 0) /* I2S_SDAT GPIOB0 */
-ALTERNATE(PIN_MASK(9, 0x90), 1, MODULE_WOV, 0) /* DMIC_CLK/DMIC_IN GPIO94/97 */
diff --git a/board/trembyle/led.c b/board/trembyle/led.c
deleted file mode 100644
index 3e2d195a06..0000000000
--- a/board/trembyle/led.c
+++ /dev/null
@@ -1,71 +0,0 @@
-/* Copyright 2019 The Chromium OS Authors. All rights reserved.
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#include "ec_commands.h"
-#include "gpio.h"
-#include "led_common.h"
-#include "led_onoff_states.h"
-
-#define LED_OFF_LVL 1
-#define LED_ON_LVL 0
-
-__override const int led_charge_lvl_1;
-__override const int led_charge_lvl_2 = 100;
-
-__override struct led_descriptor
- led_bat_state_table[LED_NUM_STATES][LED_NUM_PHASES] = {
- [STATE_CHARGING_LVL_1] = {{EC_LED_COLOR_BLUE, 2 * LED_ONE_SEC},
- {EC_LED_COLOR_RED, 2 * LED_ONE_SEC} },
- [STATE_CHARGING_LVL_2] = {{EC_LED_COLOR_RED, LED_INDEFINITE} },
- [STATE_CHARGING_FULL_CHARGE] = {{EC_LED_COLOR_BLUE, LED_INDEFINITE} },
- [STATE_DISCHARGE_S0] = {{EC_LED_COLOR_BLUE, LED_INDEFINITE} },
- [STATE_DISCHARGE_S3] = {{EC_LED_COLOR_RED, 1 * LED_ONE_SEC},
- {LED_OFF, 3 * LED_ONE_SEC} },
- [STATE_DISCHARGE_S5] = {{LED_OFF, LED_INDEFINITE} },
- [STATE_BATTERY_ERROR] = {{EC_LED_COLOR_BLUE, 2 * LED_ONE_SEC},
- {EC_LED_COLOR_RED, 2 * LED_ONE_SEC} },
- [STATE_FACTORY_TEST] = {{EC_LED_COLOR_BLUE, LED_INDEFINITE} },
-};
-BUILD_ASSERT(ARRAY_SIZE(led_bat_state_table) == LED_NUM_STATES);
-
-const enum ec_led_id supported_led_ids[] = { EC_LED_ID_BATTERY_LED };
-
-const int supported_led_ids_count = ARRAY_SIZE(supported_led_ids);
-
-__override void led_set_color_battery(enum ec_led_colors color)
-{
- switch (color) {
- case EC_LED_COLOR_BLUE:
- gpio_set_level(GPIO_LED_FULL_L, LED_ON_LVL);
- gpio_set_level(GPIO_LED_CHRG_L, LED_OFF_LVL);
- break;
- case EC_LED_COLOR_RED:
- gpio_set_level(GPIO_LED_FULL_L, LED_OFF_LVL);
- gpio_set_level(GPIO_LED_CHRG_L, LED_ON_LVL);
- break;
- default: /* LED_OFF and other unsupported colors */
- gpio_set_level(GPIO_LED_FULL_L, LED_OFF_LVL);
- gpio_set_level(GPIO_LED_CHRG_L, LED_OFF_LVL);
- break;
- }
-}
-
-void led_get_brightness_range(enum ec_led_id led_id, uint8_t *brightness_range)
-{
- brightness_range[EC_LED_COLOR_BLUE] = 1;
- brightness_range[EC_LED_COLOR_RED] = 1;
-}
-
-int led_set_brightness(enum ec_led_id led_id, const uint8_t *brightness)
-{
- if (brightness[EC_LED_COLOR_BLUE] != 0)
- led_set_color_battery(EC_LED_COLOR_BLUE);
- else if (brightness[EC_LED_COLOR_RED] != 0)
- led_set_color_battery(EC_LED_COLOR_RED);
- else
- led_set_color_battery(LED_OFF);
-
- return EC_SUCCESS;
-}
diff --git a/board/trembyle/vif_override.xml b/board/trembyle/vif_override.xml
deleted file mode 100644
index 32736caf64..0000000000
--- a/board/trembyle/vif_override.xml
+++ /dev/null
@@ -1,3 +0,0 @@
-<!-- Add VIF field overrides here. See genvif.c and the Vendor Info File
- Definition from the USB-IF.
--->