1# Copyright (c) 2024 Espressif Systems (Shanghai) Co., Ltd.
2# SPDX-License-Identifier: Apache-2.0
3
4if SOC_SERIES_ESP32C6
5
6choice ESP32C6_UNIVERSAL_MAC_ADDRESSES
7	bool "Number of universally administered (by IEEE) MAC address"
8	default ESP32C6_UNIVERSAL_MAC_ADDRESSES_FOUR
9	help
10	  Configure the number of universally administered (by IEEE) MAC addresses.
11	  During initialization, MAC addresses for each network interface are generated or derived from a
12	  single base MAC address.
13	  If the number of universal MAC addresses is four, all four interfaces (WiFi station, WiFi softap,
14	  Bluetooth and Ethernet) receive a universally administered MAC address. These are generated
15	  sequentially by adding 0, 1, 2 and 3 (respectively) to the final octet of the base MAC address.
16	  If the number of universal MAC addresses is two, only two interfaces (WiFi station and Bluetooth)
17	  receive a universally administered MAC address. These are generated sequentially by adding 0
18	  and 1 (respectively) to the base MAC address. The remaining two interfaces (WiFi softap and Ethernet)
19	  receive local MAC addresses. These are derived from the universal WiFi station and Bluetooth MAC
20	  addresses, respectively.
21	  When using the default (Espressif-assigned) base MAC address, either setting can be used. When using
22	  a custom universal MAC address range, the correct setting will depend on the allocation of MAC
23	  addresses in this range (either 2 or 4 per device.)
24	  Note that ESP32-C6 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
27config ESP32C6_UNIVERSAL_MAC_ADDRESSES_TWO
28	bool "Two"
29	select ESP_MAC_UNIVERSAL_MAC_ADDRESSES_TWO
30	select ESP_MAC_ADDR_UNIVERSE_WIFI_STA
31	select ESP_MAC_ADDR_UNIVERSE_BT
32
33config ESP32C6_UNIVERSAL_MAC_ADDRESSES_FOUR
34	bool "Four"
35	select ESP_MAC_UNIVERSAL_MAC_ADDRESSES_FOUR
36	select ESP_MAC_ADDR_UNIVERSE_WIFI_STA
37	select ESP_MAC_ADDR_UNIVERSE_WIFI_AP
38	select ESP_MAC_ADDR_UNIVERSE_BT
39	select ESP_MAC_ADDR_UNIVERSE_ETH
40
41endchoice # ESP32C6_UNIVERSAL_MAC_ADDRESSES
42
43config ESP32C6_UNIVERSAL_MAC_ADDRESSES
44	int
45	default 2 if ESP32C6_UNIVERSAL_MAC_ADDRESSES_TWO
46	default 4 if ESP32C6_UNIVERSAL_MAC_ADDRESSES_FOUR
47
48endif # SOC_SERIES_ESP32C6
49