summaryrefslogtreecommitdiff
path: root/board/servo_v4p1/ioexpanders.h
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/servo_v4p1/ioexpanders.h
parent08f5a1e6fc2c9467230444ac9b582dcf4d9f0068 (diff)
downloadchrome-ec-firmware-brya-14505.71.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/servo_v4p1/ioexpanders.h')
-rw-r--r--board/servo_v4p1/ioexpanders.h318
1 files changed, 0 insertions, 318 deletions
diff --git a/board/servo_v4p1/ioexpanders.h b/board/servo_v4p1/ioexpanders.h
deleted file mode 100644
index 6565992857..0000000000
--- a/board/servo_v4p1/ioexpanders.h
+++ /dev/null
@@ -1,318 +0,0 @@
-/* Copyright 2020 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.
- */
-
-#ifndef __CROS_EC_IOEXPANDERS_H
-#define __CROS_EC_IOEXPANDERS_H
-
-#define BOARD_ID_DET_MASK 0x7
-#define BOARD_ID_DET_OFFSET 3
-#define BOARD_ID_DET_PORT 1
-
-enum uservo_fastboot_mux_sel_t {
- MUX_SEL_USERVO = 0,
- MUX_SEL_FASTBOOT = 1
-};
-
-/*
- * Initialize Ioexpanders
- */
-int init_ioexpanders(void);
-
-/*
- * Calls the Ioexpanders Deferred handler for interrupts
- * Should be called from the ioexpanders IRQ handler
- */
-int irq_ioexpanders(void);
-
-/**
- * SBU Crosspoint select
- *
- * @param en 0 - HOST SBU to DUT SBU connected
- * 1 - STM UART to DUT SBU connected
- * @return EC_SUCCESS or EC_xxx on error
- */
-int sbu_uart_sel(int en);
-
-/**
- * Host KBC Controller reset
- *
- * @param en 0 - Assert reset
- * 1 - Deassert reset
- * @return EC_SUCCESS or EC_xxx on error
- */
-int atmel_reset_l(int en);
-
-/**
- * SBU Crosspoint polarity flip for DTU SBU to STM USART/Host SBU
- *
- * @param en 0 - Retain polarity (no inversion)
- * 1 - Swap P for N polarity
- * @return EC_SUCCESS or EC_xxx on error
- */
-int sbu_flip_sel(int en);
-
-/**
- * USB data path for general USB type A port
- *
- * @param en 0 - Host hub
- * 1 - DUT hub
- * @return EC_SUCCESS or EC_xxx on error
- */
-int usb3_a0_mux_sel(int en);
-
-/**
- * USB data path enable for general USB type A port, first on J2
- *
- * @param en 0 - Data connected / enabled
- * 1 - Data disconnected
- * @return EC_SUCCESS or EC_xxx on error
- */
-int usb3_a0_mux_en_l(int en);
-
-/**
- * Controls load switches for 5V to general USB type A.
- *
- * @param en 0 - Disable power
- * 1 - Enable power
- * @return EC_SUCCESS or EC_xxx on error
- */
-int ec_usb3_a0_pwr_en(int en);
-
-/**
- * Controls logic to select 1.8V or 3.3V UART from STM to DUT on SBU lines
- *
- * @param en 0 - 3.3V level
- * 1 - 1.8V level
- * @return EC_SUCCESS or EC_xxx on error
- */
-int uart_18_sel(int en);
-
-/**
- * Controls load switches for 5V to uservo USB type A port
- *
- * @param en 0 - Disable power
- * 1 - Enable power
- * @return EC_SUCCESS or EC_xxx on error
- */
-int ec_uservo_power_en(int en);
-
-/**
- * USB data path enable from host hub to downstream userv or DUT peripheral
- *
- * @param sel MUX_SEL_USERVO - hub connected to uservo
- * MUX_SEL_FASTBOOT - hub connected to DUT
- * @return EC_SUCCESS or EC_xxx on error
- */
-int uservo_fastboot_mux_sel(enum uservo_fastboot_mux_sel_t sel);
-
-/**
- * Controls load switches for 5V to general USB type A second port
- *
- * @param en 0 - power off
- * 1 - power enabled
- * @return EC_SUCCESS or EC_xxx on error
- */
-int ec_usb3_a1_pwr_en(int en);
-
-/**
- * USB data path for general USB type A port, second on J2
- *
- * @param en 0 - Host hub
- * 1 - DUT hub
- * @return EC_SUCCESS or EC_xxx on error
- */
-int usb3_a1_mux_sel(int en);
-
-/**
- * Reads the 3-bit Servo V4.1 version ID
- *
- * @return version ID
- */
-int board_id_det(void);
-
-/**
- * Reads the TypeA/TypeC DUT cable assembly pigtail
- *
- * @return 0 - for TypeA
- * 1 - for TypeC
- */
-int dongle_det(void);
-
-/**
- * Reads state of BC1.2 on host connection
- *
- * @return 0 - BC1.2 not present
- * 1 - BC1.2 present
- */
-int get_host_chrg_det(void);
-
-/**
- * Enable signal for supplemental power supply. This supply will support higher
- * wattage servo needs. 10ms after enabling this bit, the server supply should
- * switch over from the host supply and the higher wattage will be available
- *
- * @param en 0 - Alternate supply disabled
- * 1 - Supply enabled
- * @return EC_SUCCESS or EC_xxx on error
- */
-int en_pp5000_alt_3p3(int en);
-
-/**
- * Controls load switches for the RTL8153. By default, ethernet is enabled but
- * power can be removed as a way to clear any bad conditions
- *
- * @param en 0 - disable power
- * 1 - enable power
- * @return EC_SUCCESS or EC_xxx on error
- */
-int en_pp3300_eth(int en);
-
-/**
- * Controls load switches that enables 3.3V supply on the Display Port
- * connector. On by default
- *
- * @param en 0 - disable 3.3V to DP connector
- * 1 - enable 3.3V to DP connector
- * @return EC_SUCCESS or EC_xxx on error
- */
-int en_pp3300_dp(int en);
-
-/**
- * The rising edge of this signal clears the latched condition when thermal
- * or overcurrent fault has occurred from both CC1 and CC2 channels. Note
- * that if the CC drive circuitry continues to be overheated, it will reset
- * the fault regardless of the FAULT_CLEAR_CC signal.
- *
- * @param en 0 to 1 transition - clear fault
- * 1 to 0 transition, 0, or 1 - No change in fault
- * @return EC_SUCCESS or EC_xxx on error
- */
-int fault_clear_cc(int en);
-
-/**
- * CC1 Drive circuitry enable
- *
- * @param en 0 - disable CC1 high output drive (normal CC Operation by STM)
- * 1 - enable CC1 high drive output
- * @return EC_SUCCESS or EC_xxx on error
- */
-int en_vout_buf_cc1(int en);
-
-/**
- * CC2 Drive circuitry enable
- *
- * @param en 0 - disable CC2 high output drive (normal CC Operation by STM)
- * 1 - enable CC2 high drive output
- * @return EC_SUCCESS or EC_xxx on error
- */
-int en_vout_buf_cc2(int en);
-
-/**
- * Controls load switches for servo to power DUT Vusb
- *
- * @param en 0 - disable power
- * 1 - enable power
- * @return EC_SUCCESS or EC_xxx on error
- */
-int dut_chg_en(int en);
-
-/**
- * Get state of DUT Vusb
- *
- * @return 0 - power is disabled
- * 1 - power is enabled
- * @return EC_SUCCESS or EC_xxx on error
- */
-int get_dut_chg_en(void);
-
-/**
- * Selects power source for DUT Vusb from servo
- *
- * @param en 0 - 5V
- * 1 - charger Vbus
- * @return EC_SUCCESS or EC_xxx on error
- */
-int host_or_chg_ctl(int en);
-
-#define USERVO_FAULT_L BIT(0)
-#define USB3_A0_FAULT_L BIT(1)
-#define USB3_A1_FAULT_L BIT(2)
-#define USB_DUTCHG_FLT_ODL BIT(3)
-#define PP3300_DP_FAULT_L BIT(4)
-#define DAC_BUF1_LATCH_FAULT_L BIT(5)
-#define DAC_BUF2_LATCH_FAULT_L BIT(6)
-#define PP5000_SRC_SEL BIT(7)
-
-/**
- * Read any faults that may have occurred. A fault has occurred if the
- * corresponding bit is 0.
- *
- * BIT:
- * 0 (USERVO_FAULT_L) - Fault for port microservo USB A load switch
- * 1 (USB3_A0_FAULT_L) - Fault for general port USB A load switch
- * 2 (USB3_A1_FAULT_L) - Fault for general port USB A load switch
- * 3 (USB_DUTCHG_FLT_ODL) - Overcurrent fault on Charger or DUB CC/SBU lines
- * 4 (PP3300_DP_FAULT_L) - Overcurrent fault on DisplayPort
- * 5 (DAC_BUF1_LATCH_FAULT_L) - Fault to indicate CC drive circuitry has
- * exceeded thermal limits or exceeded current
- * limits; when faults occur, the driver is
- * disabled and needs to be reset.
- * 6 (DAC_BUF2_LATCH_FAULT_L) - Fault to indicate CC drive circuitry has
- * exceeded thermal limits or exceeded current
- * limits; when faults occur, the driver is
- * disabled and needs to be reset.
- * 7 (PP5000_SRC_SEL) - Used to monitor whether Host power or Servo Charger
- * USBC is providing source to PP5000. This may flip
- * sources upon fault and should be monitored.
- * 0 - USBC Servo charger is source
- * 1 - host cable is source
- */
-int read_faults(void);
-
-#define HOST_CHRG_DET BIT(0)
-#define SYS_PWR_IRQ_ODL BIT(6)
-
-/**
- * Read irqs which indicate some system event.
- *
- * BIT
- * 0 (HOST_CHRG_DET) - Change of state of BC1.2 on host connection
- * 0 - BC1.2 not present
- * 1 - BC1.2 present
- * 6 (SYS_PWR_IRQ_ODL) - IRQ from system full power INA231 monitor. IRQ can be
- * programmed to trip on wattage threshold.
- * 0 - IRQ asserted
- * 1 - no IRQ
- */
-int read_irqs(void);
-
-/**
- * Enables active discharge for USB DUT Charger
- *
- * @param en 0 - disable active discharge (default)
- * 1 - enable active discharge circuitry
- * @return EC_SUCCESS or EC_xxx on error
- */
-int vbus_dischrg_en(int en);
-
-/**
- * Enables Hub
- *
- * @param en 0 - place hub in suspend (low power state)
- * 1 - enable hub activity (including i2c)
- * @return EC_SUCCESS or EC_xxx on error
- */
-int usbh_pwrdn_l(int en);
-
-/**
- * Debug LED
- *
- * @param en 0 - LED is OFF
- * 1 - LED is ON
- * @return EC_SUCCESS or EC_xxx on error
- */
-int tca_gpio_dbg_led_k_odl(int en);
-
-#endif /* __CROS_EC_IOEXPANDERS_H */