1 /* 2 * Copyright (c) 2022 Google LLC 3 * 4 * SPDX-License-Identifier: Apache-2.0 5 */ 6 7 /* PI3USB9201 USB BC 1.2 Charger Detector driver definitions */ 8 9 #ifndef ZEPHYR_INCLUDE_USB_BC12_PI3USB9201_H 10 #define ZEPHYR_INCLUDE_USB_BC12_PI3USB9201_H 11 12 #define PI3USB9201_REG_CTRL_1 0x0 13 #define PI3USB9201_REG_CTRL_2 0x1 14 #define PI3USB9201_REG_CLIENT_STS 0x2 15 #define PI3USB9201_REG_HOST_STS 0x3 16 17 /* Flags */ 18 #define PI3USB9201_ALWAYS_POWERED BIT(0) 19 20 /* Control_1 register bit definitions */ 21 #define PI3USB9201_REG_CTRL_1_INT_MASK BIT(0) 22 #define PI3USB9201_REG_CTRL_1_MODE_SHIFT 1 23 #define PI3USB9201_REG_CTRL_1_MODE_MASK BIT_MASK(3) 24 25 /* Control_2 register bit definitions */ 26 #define PI3USB9201_REG_CTRL_2_AUTO_SW BIT(1) 27 #define PI3USB9201_REG_CTRL_2_START_DET BIT(3) 28 29 /* Host status register bit definitions */ 30 #define PI3USB9201_REG_HOST_STS_BC12_DET BIT(0) 31 #define PI3USB9201_REG_HOST_STS_DEV_PLUG BIT(1) 32 #define PI3USB9201_REG_HOST_STS_DEV_UNPLUG BIT(2) 33 34 enum pi3usb9201_mode { 35 PI3USB9201_POWER_DOWN, 36 PI3USB9201_SDP_HOST_MODE, 37 PI3USB9201_DCP_HOST_MODE, 38 PI3USB9201_CDP_HOST_MODE, 39 PI3USB9201_CLIENT_MODE, 40 PI3USB9201_RESERVED_1, 41 PI3USB9201_RESERVED_2, 42 PI3USB9201_USB_PATH_ON, 43 }; 44 45 #endif /* ZEPHYR_INCLUDE_USB_BC12_PI3USB9201_H */ 46