1choice ESP32C3_UNIVERSAL_MAC_ADDRESSES
2    bool "Number of universally administered (by IEEE) MAC address"
3    default ESP32C3_UNIVERSAL_MAC_ADDRESSES_FOUR
4    help
5        Configure the number of universally administered (by IEEE) MAC addresses.
6
7        During initialization, MAC addresses for each network interface are generated or derived from a
8        single base MAC address.
9
10        If the number of universal MAC addresses is four, all four interfaces (WiFi station, WiFi softap,
11        Bluetooth and Ethernet) receive a universally administered MAC address. These are generated
12        sequentially by adding 0, 1, 2 and 3 (respectively) to the final octet of the base MAC address.
13
14        If the number of universal MAC addresses is two, only two interfaces (WiFi station and Bluetooth)
15        receive a universally administered MAC address. These are generated sequentially by adding 0
16        and 1 (respectively) to the base MAC address. The remaining two interfaces (WiFi softap and Ethernet)
17        receive local MAC addresses. These are derived from the universal WiFi station and Bluetooth MAC
18        addresses, respectively.
19
20        When using the default (Espressif-assigned) base MAC address, either setting can be used. When using
21        a custom universal MAC address range, the correct setting will depend on the allocation of MAC
22        addresses in this range (either 2 or 4 per device.)
23
24        Note that ESP32-C3 has no integrated Ethernet MAC. Although it's possible to use the esp_read_mac()
25        API to return a MAC for Ethernet, this can only be used with an external MAC peripheral.
26
27    config ESP32C3_UNIVERSAL_MAC_ADDRESSES_TWO
28        bool "Two"
29        select ESP_MAC_ADDR_UNIVERSE_WIFI_STA
30        select ESP_MAC_ADDR_UNIVERSE_BT
31
32    config ESP32C3_UNIVERSAL_MAC_ADDRESSES_FOUR
33        bool "Four"
34        select ESP_MAC_ADDR_UNIVERSE_WIFI_STA
35        select ESP_MAC_ADDR_UNIVERSE_WIFI_AP
36        select ESP_MAC_ADDR_UNIVERSE_BT
37        select ESP_MAC_ADDR_UNIVERSE_ETH
38endchoice
39
40config ESP32C3_UNIVERSAL_MAC_ADDRESSES
41    int
42    default 2 if ESP32C3_UNIVERSAL_MAC_ADDRESSES_TWO
43    default 4 if ESP32C3_UNIVERSAL_MAC_ADDRESSES_FOUR
44