From: Markus Stockhausen Date: Tue, 16 Dec 2025 09:58:22 +0000 (+0100) Subject: realtek: ethernet: provide soc family in register config X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=bbafac0816d46b4868a3360469483dfd271c046b;p=thirdparty%2Fopenwrt.git realtek: ethernet: provide soc family in register config The ethernet driver currently determines the family from the soc_info structure. To avoid the dependency add the family to the local register structure. Signed-off-by: Markus Stockhausen Link: https://github.com/openwrt/openwrt/pull/21183 Signed-off-by: Hauke Mehrtens --- diff --git a/target/linux/realtek/files-6.12/drivers/net/ethernet/rtl838x_eth.c b/target/linux/realtek/files-6.12/drivers/net/ethernet/rtl838x_eth.c index eb110840e8e..c475036958b 100644 --- a/target/linux/realtek/files-6.12/drivers/net/ethernet/rtl838x_eth.c +++ b/target/linux/realtek/files-6.12/drivers/net/ethernet/rtl838x_eth.c @@ -448,6 +448,7 @@ static irqreturn_t rtl93xx_net_irq(int irq, void *dev_id) } static const struct rtl838x_eth_reg rtl838x_reg = { + .family_id = RTL8380_FAMILY_ID, .net_irq = rtl83xx_net_irq, .mac_port_ctrl = rtl838x_mac_port_ctrl, .dma_if_intr_sts = RTL838X_DMA_IF_INTR_STS, @@ -473,6 +474,7 @@ static const struct rtl838x_eth_reg rtl838x_reg = { }; static const struct rtl838x_eth_reg rtl839x_reg = { + .family_id = RTL8390_FAMILY_ID, .net_irq = rtl83xx_net_irq, .mac_port_ctrl = rtl839x_mac_port_ctrl, .dma_if_intr_sts = RTL839X_DMA_IF_INTR_STS, @@ -498,6 +500,7 @@ static const struct rtl838x_eth_reg rtl839x_reg = { }; static const struct rtl838x_eth_reg rtl930x_reg = { + .family_id = RTL9300_FAMILY_ID, .net_irq = rtl93xx_net_irq, .mac_port_ctrl = rtl930x_mac_port_ctrl, .dma_if_intr_rx_runout_sts = RTL930X_DMA_IF_INTR_RX_RUNOUT_STS, @@ -529,6 +532,7 @@ static const struct rtl838x_eth_reg rtl930x_reg = { }; static const struct rtl838x_eth_reg rtl931x_reg = { + .family_id = RTL9310_FAMILY_ID, .net_irq = rtl93xx_net_irq, .mac_port_ctrl = rtl931x_mac_port_ctrl, .dma_if_intr_rx_runout_sts = RTL931X_DMA_IF_INTR_RX_RUNOUT_STS, diff --git a/target/linux/realtek/files-6.12/drivers/net/ethernet/rtl838x_eth.h b/target/linux/realtek/files-6.12/drivers/net/ethernet/rtl838x_eth.h index 54de5ff9b04..9b94140ca9a 100644 --- a/target/linux/realtek/files-6.12/drivers/net/ethernet/rtl838x_eth.h +++ b/target/linux/realtek/files-6.12/drivers/net/ethernet/rtl838x_eth.h @@ -436,6 +436,7 @@ struct p_hdr; struct dsa_tag; struct rtl838x_eth_reg { + int family_id; irqreturn_t (*net_irq)(int irq, void *dev_id); int (*mac_port_ctrl)(int port); int dma_if_intr_sts;