summaryrefslogtreecommitdiff
path: root/zephyr/emul/tcpc/Kconfig
blob: 6866e7bab5a90b0ed17a8b228c00cb6c7384a01e (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
# Copyright 2021 The ChromiumOS Authors
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.

menuconfig EMUL_TCPCI
	bool "TCPCI common functionality"
	depends on I2C_EMUL
	help
	  Enable the TCPCI emulator. This driver uses the emulated I2C bus.
	  It is used to test tcpci code. It supports reads and writes to all
	  emulator registers. Generic TCPCI emulator can be used as the base
	  for specific TCPC device emulator that follow TCPCI specification.
	  TCPCI emulator API is available in
	  zephyr/include/emul/tcpc/emul_tcpci.h

if EMUL_TCPCI

module = TCPCI_EMUL
module-str = tcpci_emul
source "subsys/logging/Kconfig.template.log_config"

config EMUL_TCPCI_PARTNER_COMMON
	bool
	help
	  This option is selected automatically by specific TCPCI partner
	  emulators. Enable common code that can be used by TCPCI partner device
	  emulators. It covers sending delayed messages. API of common functions
	  is available in zephyr/include/emul/tcpc/emul_common_tcpci_partner.h

config EMUL_PS8XXX
	bool "Parade PS8XXX emulator"
	help
	  Enable emulator for PS8XXX family of TCPC. This emulator is extenstion
	  for TCPCI emulator. PS8XXX specific API is available in
	  zephyr/include/emul/tcpc/emul_ps8xxx.h

config EMUL_TCPCI_PARTNER_SRC
	bool "USB-C source device emulator"
	select EMUL_TCPCI_PARTNER_COMMON
	help
	  Enable USB-C source device emulator which may be attached to TCPCI
	  emulator. API of source device emulator is available in
	  zephyr/include/emul/tcpc/emul_tcpci_partner_src.h

config EMUL_TCPCI_PARTNER_SNK
	bool "USB-C sink device emulator"
	select EMUL_TCPCI_PARTNER_COMMON
	help
	  Enable USB-C sink device emulator which may be attached to TCPCI
	  emulator. API of sink device emulator is available in
	  zephyr/include/emul/tcpc/emul_tcpci_partner_snk.h

config EMUL_TCPCI_PARTNER_DRP
	bool "USB-C dual role device emulator"
	select EMUL_TCPCI_PARTNER_COMMON
	select EMUL_TCPCI_PARTNER_SNK
	select EMUL_TCPCI_PARTNER_SRC
	help
	  Enable USB-C dual role device emulator which may be attached to TCPCI
	  emulator. API of dual role device emulator is available in
	  zephyr/include/emul/tcpc/emul_tcpci_partner_drp.h

config EMUL_TCPCI_PARTNER_FAULTY_EXT
	bool "USB-C malfunctioning device emulator"
	select EMUL_TCPCI_PARTNER_COMMON
	select EMUL_TCPCI_PARTNER_SNK
	help
	  Enable USB-C malfunctioning device emulator which may be attached
	  to TCPCI emulator. API of malfunctioning device emulator is
	  available in zephyr/include/emul/tcpc/emul_tcpci_partner_faulty_ext.h

endif # EMUL_TCPCI