/* 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. */ /* * AOZ1380 USB-C Power Path Controller * * This is a basic TCPM controlled PPC driver. It could easily be * renamed and repurposed to be generic, if there are other TCPM * controlled PPC chips that are similar to the AOZ1380 */ #ifndef __CROS_EC_AOZ1380_H #define __CROS_EC_AOZ1380_H #include "usb_pd_tcpm.h" struct ppc_drv; extern const struct ppc_drv aoz1380_drv; /** * AOZ1380 Set VBus Source Current Limit. * * Using this driver requires a board_aoz1380_set_vbus_source_limit * function due to the lack of programability of this device and * requirement for hardware specific code to handle setting this limit. * * @param port The Type-C port * @param rp The Type-C RP value * @return EC_SUCCESS for success, otherwise error */ int board_aoz1380_set_vbus_source_current_limit(int port, enum tcpc_rp_value rp); /** * Interrupt Handler for the AOZ1380. * * @param port: The Type-C port which triggered the interrupt. */ void aoz1380_interrupt(int port); #endif /* defined(__CROS_EC_AOZ1380_H) */