[PATCH v2 2/5] net: dwc_eth_qos: Add StarFive ethernet driver glue layer
Simon Glass
sjg at chromium.org
Wed Mar 29 22:02:27 CEST 2023
Hi Yanhong,
On Wed, 29 Mar 2023 at 23:29, Yanhong Wang
<yanhong.wang at starfivetech.com> wrote:
>
> The StarFive ETHQOS hardware has its own clock and reset,so add a
> corresponding glue driver to configure them.
>
> Signed-off-by: Yanhong Wang <yanhong.wang at starfivetech.com>
> ---
> drivers/net/Kconfig | 7 +
> drivers/net/Makefile | 1 +
> drivers/net/dwc_eth_qos.c | 6 +
> drivers/net/dwc_eth_qos.h | 1 +
> drivers/net/dwc_eth_qos_starfive.c | 249 +++++++++++++++++++++++++++++
> 5 files changed, 264 insertions(+)
> create mode 100644 drivers/net/dwc_eth_qos_starfive.c
>
[..]
> +static struct eqos_ops eqos_jh7110_ops = {
> + .eqos_inval_desc = eqos_inval_desc_generic,
> + .eqos_flush_desc = eqos_flush_desc_generic,
> + .eqos_inval_buffer = eqos_inval_buffer_generic,
> + .eqos_flush_buffer = eqos_flush_buffer_generic,
> + .eqos_probe_resources = eqos_probe_resources_jh7110,
> + .eqos_remove_resources = eqos_remove_resources_jh7110,
> + .eqos_stop_resets = eqos_stop_resets_jh7110,
> + .eqos_start_resets = eqos_start_resets_jh7110,
> + .eqos_stop_clks = eqos_stop_clks_jh7110,
> + .eqos_start_clks = eqos_start_clks_jh7110,
> + .eqos_calibrate_pads = eqos_null_ops,
> + .eqos_disable_calibration = eqos_null_ops,
> + .eqos_set_tx_clk_speed = eqos_set_tx_clk_speed_jh7110,
> + .eqos_get_enetaddr = eqos_null_ops,
> + .eqos_get_tick_clk_rate = eqos_get_tick_clk_rate_jh7110
> +};
What is eqos_ops? Why is this layer needed in U-Boot?
Can you not use driver model directly?
Regards,
Simon
More information about the U-Boot
mailing list