1# netusb configuration options
2
3# Copyright (c) 2017 Intel Corp.
4# SPDX-License-Identifier: Apache-2.0
5
6menu "USB Device Networking support"
7
8config USB_DEVICE_NETWORK
9	bool
10	select NET_L2_ETHERNET
11
12config USB_DEVICE_NETWORK_ECM
13	bool "USB Ethernet Control Model (ECM) Networking device"
14	select USB_DEVICE_NETWORK
15	select USB_COMPOSITE_DEVICE
16	help
17	  Ethernet Control Model (ECM) is a part of  Communications Device
18	  Class (CDC) USB protocol specified by USB-IF.
19
20config USB_DEVICE_NETWORK_EEM
21	bool "USB Ethernet Emulation Model (EEM) Networking device"
22	select USB_DEVICE_NETWORK
23	help
24	  Ethernet Emulation Model (EEM) is part of  Communications Device
25	  Class (CDC) USB protocol and can be used to encapsulate Ethernet
26	  frames for transport over USB.
27
28config USB_DEVICE_NETWORK_RNDIS
29	bool "USB Remote NDIS (RNDIS) Networking device"
30	select USB_DEVICE_NETWORK
31	select USB_COMPOSITE_DEVICE
32	help
33	  Remote NDIS (RNDIS) is commonly used Microsoft vendor protocol with
34	  Specification available from Microsoft web site.
35
36if USB_DEVICE_NETWORK_ECM
37
38config CDC_ECM_INTERRUPT_EP_MPS
39	int
40	default 16
41	help
42	  CDC ECM class interrupt endpoint size
43
44config CDC_ECM_BULK_EP_MPS
45	int
46	default 512 if USB_DC_HAS_HS_SUPPORT
47	default 64
48	help
49	  CDC ECM class bulk endpoint size
50
51config USB_DEVICE_NETWORK_ECM_MAC
52	string "USB ECM Host OS MAC Address"
53	default "00005E005301"
54	help
55	  MAC Host OS Address string.
56	  MAC Address which would be assigned to network device, created in
57	  the Host's Operating System. Use RFC 7042 Documentation values as
58	  default MAC.
59
60endif # USB_DEVICE_NETWORK_ECM
61
62config CDC_EEM_BULK_EP_MPS
63	int
64	default 512 if USB_DC_HAS_HS_SUPPORT
65	default 64
66	depends on USB_DEVICE_NETWORK_EEM
67
68if USB_DEVICE_NETWORK_RNDIS
69
70config RNDIS_INTERRUPT_EP_MPS
71	int
72	default 16
73	help
74	  RNDIS interrupt endpoint size
75
76config RNDIS_BULK_EP_MPS
77	int
78	default 512 if USB_DC_HAS_HS_SUPPORT
79	default 64
80	help
81	  RNDIS bulk endpoint size
82
83endif # USB_DEVICE_NETWORK_RNDIS
84
85if USB_DEVICE_NETWORK
86
87module = USB_DEVICE_NETWORK
88module-dep = LOG
89module-str = USB Device Network log level
90source "subsys/net/Kconfig.template.log_config.net"
91
92endif # USB_DEVICE_NETWORK
93
94endmenu # USB Device Networking support
95