[][openwrt][mt7988][app][Add utility for configuring Mxl series ethernet switchs]

[Description]
Add the 'ethswbox' utility for configuring Mxl series ethernet switchs.
The commands currently supported and successfully verified are as follows:
(1). ./fapi-int-gphy-read phy=0x0 mmd=0x0 reg=0x2
(2). ./fapi-int-gphy-write phy=0x0 mmd=0x7 reg=0x3c data=0x2
(3). ./ssb_smdio_download mxl86282c_1122_1137_1136_0035_signed_dsa_smdio_xfi.bin

[Release-log]
N/A


Change-Id: I6d9d49b4384dbee0343e06270356c7bd942744b3
Reviewed-on: https://gerrit.mediatek.inc/c/openwrt/feeds/mtk_openwrt_feeds/+/9033056
diff --git a/feed/app/ethswbox/src/Makefile b/feed/app/ethswbox/src/Makefile
new file mode 100644
index 0000000..0756c79
--- /dev/null
+++ b/feed/app/ethswbox/src/Makefile
@@ -0,0 +1,45 @@
+# SPDX-License-Identifier: GPL-2.0-or-later */
+#
+
+# Include directories
+INCLUDES := -Iexample/cli/cmds \
+			-Iexample/cli/ \
+			-Iexample/fapi \
+			-Iexample/os \
+			-Iexample \
+			-Iswitch_hostapi/include/gpy \
+			-Iswitch_hostapi/include/gswip \
+			-Iswitch_hostapi/src \
+			-Iswitch_ioctl/src
+
+# Source files
+SRCS := $(wildcard example/cli/cmds/*.c) \
+		$(wildcard example/cli/*.c) \
+		$(wildcard example/fapi/*.c) \
+		$(wildcard switch_ioctl/src/*.c) \
+		switch_hostapi/src/gsw_api.c \
+		switch_hostapi/src/gsw_cli_common.c \
+		switch_hostapi/src/host_adapt.c \
+		switch_hostapi/src/host_api_impl.c \
+		switch_hostapi/src/host_smdio_ssb.c \
+		switch_hostapi/src/mdio_relay.c \
+		switch_hostapi/src/sys_misc.c
+
+# Define the C object files
+OBJS := $(SRCS:.c=.o)
+
+# Define the name of the executable file
+TARGET := ethswbox
+
+.PHONY: clean
+
+all: $(TARGET)
+
+$(TARGET): $(OBJS)
+	$(CC) $(LDFLAGS) -o $@ $^
+
+%.o: %.c
+	$(CC) $(CFLAGS) $(INCLUDES) -c $< -o $@
+
+clean:
+	rm -f $(OBJS) $(TARGET)