/* =============================================================================
 * net.h - 이더넷/LwIP 네트워크 (RPi WiFi 대응 -> 유선 LAN8720 RMII)
 *
 * 구현(net.c + ethernetif.c): STM32 ETH MAC + LAN8720 PHY(RMII) + LwIP.
 * DHCP 우선(APP_NET_USE_DHCP), 실패 시 static fallback(app_config.h).
 * FreeRTOS 환경에서 LwIP tcpip 스레드를 사용한다.
 * ===========================================================================*/
#ifndef NET_H
#define NET_H

#include <stdint.h>

typedef enum { NET_DOWN = 0, NET_UP = 1 } net_status_t;

/* LwIP + ETH + PHY 초기화 (부팅 시 1회). */
void net_init(void);

/* 링크 업 + IP 확보까지 대기. 0 성공, 음수 타임아웃. */
int net_wait_up(uint32_t timeout_ms);

/* 현재 네트워크 상태. */
net_status_t net_status(void);

/* 디버그용: 현재 IP 를 점-십진 문자열로 buf 에 기록(없으면 "0.0.0.0"). */
void net_ip_str(char *buf, uint32_t buflen);

#endif /* NET_H */
