| 123456789101112131415161718192021222324252627282930313233343536373839404142 |
- /*
- * SPDX-FileCopyrightText: 2022 Espressif Systems (Shanghai) CO LTD
- *
- * SPDX-License-Identifier: Unlicense OR CC0-1.0
- */
- #pragma once
- #include "unity.h"
- #include "test_utils.h"
- #include "esp_event.h"
- #include "esp_netif.h"
- #include "esp_eth.h"
- #define ETH_START_BIT BIT(0)
- #define ETH_STOP_BIT BIT(1)
- #define ETH_CONNECT_BIT BIT(2)
- #define ETH_GOT_IP_BIT BIT(3)
- #define ETH_START_TIMEOUT_MS (10000)
- #define ETH_CONNECT_TIMEOUT_MS (40000)
- #define ETH_STOP_TIMEOUT_MS (10000)
- #define ETH_GET_IP_TIMEOUT_MS (60000)
- #define ETH_DOWNLOAD_END_TIMEOUT_MS (240000)
- typedef struct {
- uint8_t dest[ETH_ADDR_LEN];
- uint8_t src[ETH_ADDR_LEN];
- uint16_t proto;
- uint8_t data[];
- } __attribute__((__packed__)) emac_frame_t;
- esp_eth_mac_t *mac_init(void *vendor_emac_config, eth_mac_config_t *mac_config);
- esp_eth_phy_t *phy_init(eth_phy_config_t *phy_config);
- void extra_eth_config(esp_eth_handle_t eth_handle);
- void extra_cleanup(void);
- /** Event handler for Ethernet events */
- void eth_event_handler(void *arg, esp_event_base_t event_base,
- int32_t event_id, void *event_data);
- /** Event handler for IP_EVENT_ETH_GOT_IP */
- void got_ip_event_handler(void *arg, esp_event_base_t event_base,
- int32_t event_id, void *event_data);
|